I have been a programmer for 57 years. Therefore, I find the introductory tutorials uninteresting. I have a very focused set of questions.
I need to draw lines in 3D space. Just lines. No extrusions. Practically no surface rendering.
I need to “walk around” my 3D line drawing. I want to use the mouse to rotate it in all three axes, alternatively, I want to be able to change the camera origin and axis. I do not want to deal with deep theory. I want to say, “Take the drawing I have just done and let me see it from various angles as determined by the mouse interaction”. I want 3D transformations without reading a thick book on quaternions (which I have).
I will need to show an animation of lines being drawn, and when a surface is defined (a definite condition I know of) issue a set of calls that fill in the flat space, and even move it into a window of “known sides”, which may or may not have to be assembled into a solid.
I will need to run this animation forwards and backwards, e.g., by using the scroll wheel. Or something. I have been writing GUIs for 30 years, and taught courses in GUI-based 2D graphics. I was doing 2D graphics long before I had GUI-based systems to run them on (no, you don’t want the long story of how to do 2D graphics on a character-based terminal).
I will need to mark one end of the first line with a solid circle, and then draw the lines from point A to point B with an arrowhead at the end of the line
A line is first drawn as a dotted line. Then, once its validity is established, it becomes a solid line. When two lines are successfully accepted, I want to create a transparent plane to show the plane on which the two lines lie, such that I can see other lines drawn behind the plane.
This can be standalone, and I will be providing a text file that tells what to do, e.g., “line x0 y0 z0 x1 y1 z1” and have my program draw the line (note that parsing this command line to extract the data is something I could do while sleeping soundly, so don’t worry about how I get the values out of it).
I will be using Java, and ideally this will later be incorporated into a Java app that already is generating the lines.
I would like to go from zero to seeing the line drawing in 3D, with rotation, in less than a day.
I have been doing 2D graphics for something over 40 years, I can do 2D transformation matrices without slowing down, about as fast as I can type. I have taught courses in 2D graphics, and I have delivered 2D graphics products to my clients (I’m now retired, and doing this for fun). I do not want to have to learn a lot of boilerplate code to get this up and running. Assume that for the first day, I type in the calls that draw the lines. Assume that I could have my program that is creating the lines write the source code, in Java, to make the library calls to do the drawing, thus eliminating the parsing component entirely.
I need a simple example framework for doing this, because it is just a diversion in a much more complex project and I can’t afford too much of a diversion right now.
Once I have the framework, I can reverse-engineer it to figure out what I need to do to enhance it. That’s the easy part. Getting the framework, at the moment, is the hard part.
Programming does not intimidate me. Building a 3D framework from the ground up would not intimidate me if I had more time to give to the process, but I don’t. I need it now. OK, I realize this is “instant gratification”. But it is all I have time to give to it in the next week or two.
Also, for “free and open”, it seems to insist on a donation before I can download it. Perhaps I have misunderstood the word “free”. If it is useful, and solves my problem, I will happily make a donation. But I’m not going to donate if I can’t give it a free test drive to know if it is what I need.
So how do I get started? What’s the best “sample app” to start with?