Recommend a basic drawing program?

I need to make some figures for a math project, and I realized I don't have a basic drawing application. I just need to be able to draw circles, shade regions, arrows, that kind of thing. I also need to be able to label things, so I need text (including greek letters, or even better, I would just insert the text as images from latexit).
I have Seashore but it doesn't seem to have a circle tool. What's a good program to use for this kind of drawing? Preferably a free one.
Thanks!

My previous computer came with a program called OmniGraffle, and I have found it to be great. If was not pre-instaled on my new MacBook Pro, though. It's not free, unless it happens to be sitting on your computer already and you're not aware of it.
There's a quite good, but complex, vector drawing program like Adobe Illustrator called Inkscape... the downside is that it isn't a native Mac app. It's a Unix app and requires X11 (available on your Mac OS X install disk as an optional install). There's also a similar program (also requiring X11) that is more like Adobe Photoshop called Gimp.
Hope one of these can help you!

Similar Messages

  • Problem in a drawing program

    Dear experts,
    While working on a program,i am having a problem which is just killing me.This is a simple drawing program.On clicking draw button,user
    can do free hand drawing.On clicking line he can stretch line to any
    coordinate.Similarily do erasing etc.
    Problem underlies in rectangle part.I am using some conditions.
    Conditions are based on analysis.Fixx and Fixy are the points
    when mouse is pressed.
    Prevx and Prevy are coordinates which are stored before retrieving
    newer ones.x and y are new coordinates.
    I have marked the relevant code as part of code for easy understanding.
    Problem is in behaviour for rectangle.If i draw twoards either side
    it works well but the moment i drag right ,left,up down ,i get
    patched near origin(fixed point) from where mouse was pressed ie
    fixx,fixy.
    I recommend if this could be copied as it is and run,the problem will come to light better.
    import java.io.*;
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.geom.*;
    import java.util.*;
    public class FProf extends JPanel implements MouseListener,ActionListener,MouseMotionListener
    JFrame main_window;
    int draw_mode,erase_mode,line_mode,box_mode;
    double fixx,fixy;
    double initx,inity;
    double x,y;
    JButton b_draw;
    JButton b_erase;
    JButton b_line;
    JButton b_rec;
    JPanel draw_panel;
    JPanel bt_panel;
    Graphics2D g2;
    Point p;//Mouse pointer
    Image image=null;
    double prevx,prevy;
    double c1,c2,c3,c4,c5,c6,c7,c8;
    Stroke[] linestyles = new Stroke[] {
    new BasicStroke(25.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL),
    new BasicStroke(25.0f, BasicStroke.CAP_SQUARE,BasicStroke.JOIN_MITER),
    new BasicStroke(1.0f, BasicStroke.CAP_ROUND,BasicStroke.JOIN_MITER),
    new BasicStroke(25.0f, BasicStroke.CAP_ROUND,
    BasicStroke.JOIN_ROUND), };
    FProf()
    draw_mode=0; //Inactive
    erase_mode=0; //Inactive
    addMouseListener(this);
    addMouseMotionListener(this);
    GridLayout l=new GridLayout(4,4);
    main_window=new JFrame("Fountain Prof V.200");
    bt_panel=new JPanel();
    b_draw=new JButton ("Draw");
    b_draw.addActionListener(this);
    b_erase=new JButton("Erase");
    b_erase.addActionListener(this);
    b_line=new JButton("Line");
    b_line.addActionListener(this);
    b_rec=new JButton ("Box");
    b_rec.addActionListener(this);
    main_window.getContentPane().setLayout(new BorderLayout());
    main_window.getContentPane().add("Center",this);
    bt_panel.setLayout(l);
    bt_panel.add(b_draw);
    bt_panel.add(b_erase);
    bt_panel.add(b_line);
    bt_panel.add(b_rec);
    main_window.getContentPane().add("East",bt_panel);
    main_window.setSize(800,600);
    main_window.show();
    private void draw()
    if ((erase_mode==1) &&(draw_mode==0) &&(line_mode==0)&&(box_mode==0)) {
    g2.setPaintMode();
    g2.setColor(Color.white);
    g2.setStroke(linestyles[3]); // Select the line style to use
    g2.draw(new Line2D.Double(initx,inity,x,y));
    repaint();
    else if ((draw_mode==1) && (line_mode==0) &&(erase_mode==0)&&(box_mode==0))
    g2.setPaintMode();
    g2.setColor(Color.black);
    g2.setStroke(linestyles[2]); // Select the line style to use
    g2.draw(new Line2D.Double(initx,inity,x,y));
    repaint();
    else if ((draw_mode==0) && (erase_mode==0) &&(line_mode==1)&&(box_mode==0))
    repaint();
            else if ((draw_mode==0) && (erase_mode==0) &&(line_mode==0)&&(box_mode==1))
            repaint();
    public void paintComponent(Graphics g)
    super.paintComponent(g);
    if (image == null)
    System.out.print(getHeight());
    g2=(Graphics2D) g;
    image = createImage(getWidth(), getHeight());
    g2 = (Graphics2D)image.getGraphics();
    g2.setColor(Color.white);
    g2.fillRect(0, 0, getWidth(), getHeight());
    g2.setColor(Color.black);
    Rectangle r = g.getClipBounds();
    g.drawImage(image, r.x, r.y, r.width+r.x, r.height+r.y, r.x, r.y, r.width+r.x, r.height+r.y, null);
    public void mouseReleased(MouseEvent e)
    public void mouseEntered(MouseEvent e)
    public void mouseExited(MouseEvent e)
    public void change_cursor()
    Toolkit tk=Toolkit.getDefaultToolkit();
    if ((draw_mode==1)&&(erase_mode==0)) {
    Image img=tk.getImage("Pen.gif");
    Cursor dym=tk.createCustomCursor(img,new Point(10,10),null);
    setCursor(dym);
    else if ((erase_mode==1)&&(draw_mode==0)) {
    Image img=tk.getImage("eraser.gif");
    Cursor dym=tk.createCustomCursor(img,new Point(10,10),null);
    setCursor(dym);
    public void mouseClicked(MouseEvent e)
    public void mouseDragged(MouseEvent e)
    Point p;
    if ((draw_mode ==1)||(erase_mode==1)) {
    initx=x;inity=y;
    p=e.getPoint();
    x=p.getX();
    y=p.getY();
    draw();
    if ((line_mode==1)&&(box_mode==0)) {
    if (mousehasmoved(e)) {
    prevx=x;prevy=y;
    p=e.getPoint();
    x=p.getX();
    y=p.getY();
    g2 = (Graphics2D)image.getGraphics();
    g2.setColor(Color.black);
    g2.setXORMode(Color.white);
    g2.draw(new Line2D.Double(fixx,fixy,prevx,prevy)); //erasing previous line
    draw();
    g2.draw(new Line2D.Double(fixx,fixy,x,y)); //redrawing newer one
    draw();
    if ((line_mode==0)&&(box_mode==1)) {
    if (mousehasmoved(e)) {
    prevx=x;prevy=y;
    p=e.getPoint();
    x=p.getX();
    y=p.getY();
    g2 = (Graphics2D)image.getGraphics();
    g2.setColor(Color.black);
    g2.setXORMode(Color.white);
    if ((x<=fixx) && (y>=fixy)) {
    c1=x;c2=fixy;c3=fixx-x;c4=y-fixy;c5=prevx;c6=fixy;c7=fixx-prevx;c8=prevy-fixy;
    else if ((x>=fixx)&&(y>=fixy)) {
    c1=fixx;c2=fixy;c3=x-fixx;c4=y-fixy;c5=fixx;c6=fixy;c7=prevx-fixx;c8=prevy-fixy;
    else if ((x>=fixx)&&(y<=fixy)) {
    c1=fixx;c2=y;c3=x-fixx;c4=fixy-y;c5=fixx;c6=prevy;c7=prevx-fixx;c8=fixy-prevy;
    else if ((x<=fixx)&&(y<=fixy)) {
    c1=x;c2=y;c3=fixx-x;c4=fixy-y;c5=prevx;c6=prevy;c7=fixx-prevx;c8=fixy-prevy;
    g2.draw(new  Rectangle2D.Double(c5,c6,c7,c8));
    draw();
    g2.draw(new  Rectangle2D.Double(c1,c2,c3,c4));
    draw();
    }public void mouseMoved(MouseEvent e)
    p=e.getPoint();
    x=p.getX();
    y=p.getY();
    main_window.setTitle("X- "+x+" "+"Y- "+y);
    initx=x;inity=y; //Get me current position
    if ((draw_mode==1)||(erase_mode==1)) {
    //change_cursor();
    else {
    setCursor(Cursor.getDefaultCursor());
    public void mousePressed(MouseEvent ex)
    if ((draw_mode==0) && (erase_mode==0) &&((line_mode==1)||(box_mode==1))) {
    fixx=ex.getX();fixy=ex.getY();
    public void actionPerformed(ActionEvent ev)
    Object ob=ev.getSource();
    if (ob==b_draw) {
    draw_mode=1;erase_mode=0;line_mode=0;
    box_mode=0;
    if (ob==b_erase) {
    erase_mode=1;draw_mode=0;line_mode=0;
    box_mode=0;
    if (ob==b_line) {
    erase_mode=0;draw_mode=0;line_mode=1;
    box_mode=0;
    if (ob==b_rec) {
    erase_mode=0;draw_mode=0;line_mode=0;box_mode=1;
    public static void main(String args[])
    new FProf();
    public boolean mousehasmoved (MouseEvent e)
    return((initx != e.getX()) ||(inity!=e.getY()));
    }}

    change your mouseDragged method to something like:
        public void mouseDragged(MouseEvent e)
            Point p;
            if ((draw_mode == 1) || (erase_mode == 1))
                initx = x;
                inity = y;
                p = e.getPoint();
                x = p.getX();
                y = p.getY();
                draw();
            if ((line_mode == 1) && (box_mode == 0))
                if (mousehasmoved(e))
                    prevx = x;
                    prevy = y;
                    p = e.getPoint();
                    x = p.getX();
                    y = p.getY();
                    g2 = (Graphics2D) image.getGraphics();
                    g2.setColor(Color.black);
                    g2.setXORMode(Color.white);
                    g2.draw(new Line2D.Double(fixx, fixy, prevx, prevy)); // erasing
                                                                            // previous
                                                                            // line
                    draw();
                    g2.draw(new Line2D.Double(fixx, fixy, x, y)); // redrawing
                                                                    // newer one
                    draw();
            if ((line_mode == 0) && (box_mode == 1))
                if (mousehasmoved(e))
                    prevx = x;
                    prevy = y;
                    p = e.getPoint();
                    x = p.getX();
                    y = p.getY();
                    g2 = (Graphics2D) image.getGraphics();
                    g2.setColor(Color.black);
                    g2.setXORMode(Color.white);
                     * calculate the former rectangle - it does not depend to
                     * the new rectangle!
                    if((prevx <= fixx) && (prevy >= fixy))
                        c5 = prevx;
                        c6 = fixy;
                        c7 = fixx - prevx;
                        c8 = prevy - fixy;                   
                    else
                        if ((prevx >= fixx) && (prevy >= fixy))
                            c5 = fixx;
                            c6 = fixy;
                            c7 = prevx - fixx;
                            c8 = prevy - fixy;
                        else
                            if ((prevx >= fixx) && (prevy <= fixy))
                                c5 = fixx;
                                c6 = prevy;
                                c7 = prevx - fixx;
                                c8 = fixy - prevy;
                            else
                                if ((prevx <= fixx) && (prevy <= fixy))
                                    c5 = prevx;
                                    c6 = prevy;
                                    c7 = fixx - prevx;
                                    c8 = fixy - prevy;
                     * calculate the new rectangle here
                    if ((x <= fixx) && (y >= fixy))
                        c1 = x;
                        c2 = fixy;
                        c3 = fixx - x;
                        c4 = y - fixy;
                    else
                        if ((x >= fixx) && (y >= fixy))
                            c1 = fixx;
                            c2 = fixy;
                            c3 = x - fixx;
                            c4 = y - fixy;
                        else
                            if ((x >= fixx) && (y <= fixy))
                                c1 = fixx;
                                c2 = y;
                                c3 = x - fixx;
                                c4 = fixy - y;
                            else
                                if ((x <= fixx) && (y <= fixy))
                                    c1 = x;
                                    c2 = y;
                                    c3 = fixx - x;
                                    c4 = fixy - y;
                    g2.draw(new Rectangle2D.Double(c5, c6, c7, c8));
                    draw();
                    g2.draw(new Rectangle2D.Double(c1, c2, c3, c4));
                    draw();
        }why?
    You calculated the former rectangle in dependence to the newly created one. It does not depend on that, but needs its own if statements. I'm sure you will understand what I mean when looking at the method.

  • Is it possible to have an Infinite canvas drawing program

    Hi
    Is it possible to have an Infinite canvas in a drawing program?
    The sort of Features that make sense would be
    Zoom In and out
    All other basic drawing tool capabilities

    That's not right, hereafter. So long as the canvas is virtualized it can be theoretically infinite. It only needs memory and disk space for the sections actually displayed.
    Major Solutions, there are low level facilities to enable what you describe, but you'd need to implement the details (in particular the drawing tools) yourself. As hereafter notes there are some practical issues depending on your definition of infinite.
    For very large canvases take a look at Direct2D and the VirtualSurfaceImageSource.
    --Rob

  • Is there a forum for discussing basic cad programs

    I used to use a basic cad program called floorplan(on windows). As it was an 8 bit version it stopped working on windows 7 so I ended up with the old PC set up just to use that.
    Having become an Apple convert I want to get rid of all the old Microsoft stuff but want a basic uncomplicated program which lets me do basic floor plans as well as the occasional 2D drawing for building projects. this means I want to be able to see the angle the line is being drawn at, the length of the line etc.
    there are plenty of programs out there but how do I test them without wasting money on ones that are either to complicated for my needs or to simple to do what I need?

    No, and there won't be until the final version of it comes out.
    (125309)

  • Paint/drawing program for Mac

    Is there a (freeware) painting/drawing program for the Mac, such as MS Paint on wintel machines? My youngest used MS Paint for a number of school projects and I'd like to find a counterpart for use on the Mac. Thanks
    iMac-Intel   Mac OS X (10.4.5)  

    There is always The Gimp, but that might be a little complicated for a young person, of couse my 9 year old uses Photoshop, so if they aren't too young you might try it. You will need to first install X11, that comes on your system DVD that came with your mac.
    Have you looked at http://www.chocoflop.com/ ? I've never used it but I saw someone else recommend it.
    Alfredo

  • Basic Drawing/Painting tool failure

    The following tools are refusing to work correctly. Yes, I am resting my tools at the tools Option bar. Resetting the tools is now SO common I'm think of adding a hotkey.
    Brush: refuses to work unless I reset it nearly every time I come back to it,
    Erase: Doesn't work even after I reset it.
    Curve [cmd+M]: Doesn't work on pixels if my selection is partially an alpha.
    These are basic building blocks of my workflow, in digital painting, sketching and creating masks. I understand when advanced features need retooling and updating, but these tools NEED to work. Please test these more thoroughly, next time. While I appreciate a lot of the features of the Creative Cloud, 50$ to 70$ a month is a lot to ask when your core products are working less well than their open source alternatives. You are really making a case for GIMP or Affinity.
    Does that sound ludicris? It does. I can't imagine trying to do any production retouching in any of those applications, but currently, the suite I rent for over 600$ a year, doesn't work consistently when I need it to work.
    Creative Cloud is only a deal when it functions. If I cobbled together a bought and paid for or open source alternative  it might look like this: Inkscape, GIMP (or Affinity), Motion (which sucks... but Blender could make it better),  Final Cut Pro, Logic... I'd be screwed without InDesign, but I could make it work. This all sounds like a huge headache, but it's currently a BETTER deal when you break core, basic features in flagship applications.
    If you are rebuilding the thing from scratch, fine, but TEST it. I know you guys don't like Macs, but A LOT of you customers use them. Either support the hardware or DON'T.

    My previous computer came with a program called OmniGraffle, and I have found it to be great. If was not pre-instaled on my new MacBook Pro, though. It's not free, unless it happens to be sitting on your computer already and you're not aware of it.
    There's a quite good, but complex, vector drawing program like Adobe Illustrator called Inkscape... the downside is that it isn't a native Mac app. It's a Unix app and requires X11 (available on your Mac OS X install disk as an optional install). There's also a similar program (also requiring X11) that is more like Adobe Photoshop called Gimp.
    Hope one of these can help you!

  • Replacement for Appleworks "Draw" Program?

    Hi -
    With Apple's announcement that it will no longer upgrade or support Appleworks, can anyone recommend a simple (and inexpensive) replacement for AW's Draw program? I use it a lot for creating CD/DVD covers and inserts and would love to find a more modern and -- but non-complex -- replacement. Thanks for any recommendations.
    Shelly

    With Apple's announcement that it will no longer upgrade or support Appleworks, ....
    I guess I don't understand the premise here. It's been years and years since Apple has supported AW in any reasonable way, and it's been known or at least accepted for some time that nothing further was likely to happen after 6.2.9.
    The only thing that's changed is that it's no longer sold in the Apple Store. The support page (http://www.apple.com/support/appleworks/) still exists, downloads and links are still alive from there, and of course there is still this forum and the rest of the support structure in place (knocking softly on wood).
    At the end of the day, why start rushing around now to look for a replacement? If it meets your needs and will continue to do so, then you should, and should be able to, continue to use it.
    In a different thread in a different forum I came across a post which stated that AW would not be usable on Leopard. If that's the case, it's come as news to me — is it some announcement that I've missed, some connection I've not made?
    If so — so sad, too bad, and will just delay my transition into the new OS.

  • Upgraded to 10.6.7 and now having various issues with Appleworks Drawing program.

    HELP...I just upgraded to 10.6.7 and now my Appleworks drawing program is slow - beach balls all the time, I can not copy into other programs, copy and paste messes with the formatting, fills and lines disappear, Fonts are messed up when copied...ON and ON..I Installed rosetta from the 10.6.7 install disk but still no luck.   Any advice is appreciated, I am in a crunch with drawing deadlines an no time to learn another drawing program..Yes I am old school.and HELP! 

    You could look at EazyDraw: the version on the website is $95 download, $139 box and manual: it will open ClarisWorks drawings and is a powerful vector drawing program which makes a good replacement for Appleworks.
    There is a much cheaper version in the Mac App Store but note that this version does not open AppleWorks documents.

  • Basic RMI program works in windows but not Linux

    Hello,
    I'm trying to learn RMI for a program at work.
    I have the book "Core Java 2 - Volume 2 - Advanced Features". Chapter 5 of this book is about RMI.
    The most basic example program they use works fine in Windows. However, when I try to run this same program under linux it doesn't work.
    For now, I'm not even trying to run a client (in linux)...just the server.
    Here is the server code.
    public class ProductServer
    public static void main(String args[])
    try
    System.out.println
    ("Constructing server implementations...");
    ProductImpl p1
    = new ProductImpl("Blackwell Toaster");
    ProductImpl p2
    = new ProductImpl("ZapXpress Microwave Oven");
    System.out.println
    ("Binding server implementations to registry...");
    Naming.rebind("rmi://172.20.101.1/toaster", p1);
    Naming.rebind("rmi://172.20.101.1/microwave", p2);
    System.out.println
    ("Waiting for invocations from clients...");
    catch(Exception e)
    e.printStackTrace();
    What is very interesting is that this call works
    Naming.rebind("rmi://172.20.101.1/toaster", p1);
    But the very next line
    Naming.rebind("rmi://172.20.101.1/microwave", p2);
    Throws this error ::
    java.rmi.UnmarshalException: Error unmarshaling return header: java.io.EOFException
    at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:221)
    at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:366)
    at sun.rmi.registry.RegistryImpl_Stub.rebind(RegistryImpl_Stub.java:133)
    at java.rmi.Naming.rebind(Naming.java:172)
    at ProductServer.main(ProductServer.java:35)
    I would very much appreciate the help. Thank You.

    We solved the problem
    Apparently, on the linux machine we had both gcc and the jdk installed
    the regualar compile command hit the jdk
    the rmic command used the gcc version of rmic
    the rmiregistry used the gcc version of rmiregistry
    the regular run command hit the jdk
    using the rmic and rmiregistry in the jdk made everything work fine
    I knew it had to be a stupid answer.

  • Basic Java Program help needed urgently.

    I have posted the instructions to my project assignment on here that is due tomorrow. I have spent an extremely large amount of time trying to get the basics of programming and am having some difficulty off of the bat. Someone who has more experience with this and could walk me through the steps is what I am hoping for. Any Help however will be greatly appreciated. I am putting in a lot of effort, but I am not getting the results I need. Thank you for the consideration of assisting me with my issues. If you have any questions please feel free to ask. I would love to open up a dialogue.
    CIS 120
    Mathematical Operators
    Project-1
    Max possible pts 100
    Write a program “MathOperators” that reads two integers, displays user’s name, sum, product,
    difference, quotients and modulus of the two numbers.
    1. Create a header for your project as follows:
    * Prgrammer: Your Name (1 pt) *
    * Class: CIS 120 (1 pt) *
    * Section: (1 pt) *
    * Instructor: (1 pt) *
    * Program Name: Mathematical Operators (1 pt) *
    * Description: This java program will ask the user to enter two integers and *
    display sum, product, difference, quotients and modulus of the two numbers
    * (5 pts) *
    2. Display a friendly message e.g. Good Morning!! (2 pts)
    3. Explain your program to the user e.g. This java program can add, subtract, multiply,
    divide and calculate remainder of any two integer numbers entered by you. Let’s get
    started…. (5 pts)
    4. Prompt the user- Please enter your first name, store the value entered by user in a
    string variable name. Use input.next() instead of input.nextLine(). (8 pts)
    5. Prompt the user- name, enter first integer number , store the value entered by user in
    an integer variable num1.(5 pts)
    6. Prompt the user- name, enter second integer number , store the value entered by user in
    an integer variable num2.(5 pts)
    7. Display the numbers entered by the user as: name has entered the numbers num1and
    num2.(5 pts)
    8. Calculate sum, product, difference, quotients and modulus of the two numbers. ( 30 pts)
    9. Display sum, product, difference, quotients and modulus of the two numbers. ( 10 pts)
    10. Terminate your program with a friendly message like- Thanks for using my program,
    have a nice day!!(2 pts)

    Nice try. You have not demonstrated that you've at least TRIED to do something. No one is going to do your homework for you. Your "urgency" is yours alone.

  • What software comes closest to performing tasks like I could do on the Appleworks drawing program ?

    What software is available for MacOSX that comes closest to performing like the old Appleworks drawing program?

    Maybe Apple's iWork, or more specifically Pages - part of a package of three apps (Pages/Numbers/Keynote).
    I never used Appleworks but Pages has some drawing tools for lines/boxes/circles/stars, etc. as well as a tool for freehand shapes. It will also open Microsoft Word files and Pages files can be exported in Word format.
    Numbers is akin to Microsoft's Excel and will open Excel files and also export as Excel.
    Keynote is an excellent app for presentations - a competitor to PowerPoint. Again it'll open PowerPoint files and export them.
    Finally - I'm not 100% on this so hopefully someone else will chime in - but I believe Pages will open AppleWorks files.
    iWork is available from the Mac App Store. The apps can be bought individually if you don't need all of them.

  • Drawing programs for the MBP

    Do MBPs come with a drawing program similar to paint on windows? Or can someone point me in the right direct for a freeware/shareware program.

    http://www.coolosxapps.net/
    Look down the list for NEO Office - it includes a drawing program.
    Good luck.
    Or - if you need to do some design type stuff you could try Google Sketch Up - but this is more for scale modelling.

  • How do I create a simple "prize draw" program?

    Hey, I'd like to create a simple "prize draw" program
    that randomly selects a name (or number) from a list of names, I'd like it to be my own custom version. For a programmer this is probably the easiest thing but I'm new to programming (beginner), don't eve know if I'm in the right subcategory (flash). Is there a tutorial or something somewhere that you guys think could help me out, please?

    Create the list as an array and use the Math methods to randomly pick one of the values from the array.
    var prizeArray = new Array("name1","name2");
    var drawnPrize = prizeArray[Math.floor(Math.random()*prizeArray.length)];
    trace(drawnPrize);
    If you don't know if you should be using Flash, then you probably don't want to be looking for help until you figure out what you intend to do for your custom design.

  • Flickerinhg in drawing program

    Hello,
    I have written a drawing program. I use arrays to store the values of the objects that should be drawn, and use repaints on mouse release and dragging.
    Everything works fine, but the whole drawing flickers whenever I draw something else.
    I read things about Double buffering. I took an example, but in that example I would have to use Update to constantly update the graphics.
    This would seem fine, but it causes my figures to be drawn over and over whilst dragging, for I use repaint AND update on the drag.
    Also, people say that a JPanel uses double buffering by default.. I cant seem to get it to work unfortunately.
    Any suggestions??

    I tried it without the update, but it didn't work.Double buffering:
    - paint content to off-image in update()
    - paint off-image to image in paint()
    No custom painting in paint() necessary.
    Unfortunately, that hyperlink doesn't give the
    nessecary information either.The link does give the info, though not directly. It refers to the Java2D tutorial, which has a section about Double Buffering:
    http://java.sun.com/docs/books/tutorial/2d/images/doublebuffering.html

  • That option or program I recommend to delete files, programs, etc. completely from my mac

    That option or program I recommend to delete files, programs, etc. completely from my mac

    You might try to see if you can restore your iWork documents from an earlier point in time by using Time Machine.  To do this, Open Finder and navigate to “~/Library/Mobile Documents/com~apple~Pages/Documents” (without the quotes) from the Go>Go to Folder menu.  Then launch Time Machine, go back in time until you see your pages documents, then select them, click Restore and exit Time Machine.  Then repeat this from "~/Library/Mobile Documents/com~apple~Numbers/Documents" to restore your Number documents.

Maybe you are looking for