PythoncadWishTraker item #2808246, was opened at 2009-06-18 11:04
Message generated for change (Settings changed) made by matteoboscolo
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=1334597&aid=2808246&group_id=263167
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
>Category: None
Group: None
Status: Open
Resolution: None
Priority: 1
Private: No
Submitted By: yndesai (yndesai)
Assigned to: Matteo Boscolo (matteoboscolo)
Summary: Support of 3D objects
Initial Comment:
Any plan to move to 3D . . . ?
or pythonCAD will remain a 2D CAD software.
----------------------------------------------------------------------
Comment By: yndesai (yndesai)
Date: 2009-12-01 13:39
Message:
Thanks Yorik for your inputs. I Have following to say:
There are 2 issues coming up
1. Adding few features in PythonCAD which helps an AutoCAD user with
smallest learning curve can be one of the "Selling point" which can have
more users looking at PythonCAD as their first 2D cad option. We may
monitor such requests under DIFFERENT TRACKER.
2. Your idea of having pythoncad as 2D editor blender is also good idea
which matches Matteo's view. My dream for PythonCAD is if there is 3D-CAD
which supports python scripting (like Blender) then:
2.1 Blender user should be able to open a PythonCAD from within
blender.
2.2 Create 2D drawing in PythonCAD.
2.3 Once the 2D cadding is done user moves to blender by closing
pythoncad window.
2.4 Blender prompts for 3 points (origin, + 2points to defing the
plane).
2.5 Drawing created in PytonCAD is now imported in the user defined
plane.
We do have a developer on board who have worked on blender hope we can
make some progress here.
----------------------------------------------------------------------
Comment By: Yorik van Havre (yorikvanhavre)
Date: 2009-11-30 14:45
Message:
Hi, I am (as you both know) one of the people working on FreeCAD... There's
some time I didn't look at the pythoncad code, I'm cloning right now. I
have a couple of thoughts on that subject:
First I think trying to behave like AutoCAD is dangerous. AutoCAD is an
old prehistoric monster, and its interface is the accumulation of 20 years
of features, and I think we can do much better today than the old "command
line" that every autocad user says "I can't live without". Being able to do
everything with the keyboard is relatively easy, and doesn't necessarily
require the same implementation as autocad. In fact, today, even autocad
tries to "hide" its command line in favor of that "tooltip" input box.
PythonCAD is very simple, and it is an advantage, I think.
About going 3D, I think it is easy and hard at the same time. Adding a Z
coordinate to everything (which would basically always be = 0 in the first
times) should be easy, specially in python. Having all the 2D tools
behaving in 3D is not so easy, but not too difficult either (I just did it
for the 2D drawign module of FreeCAD). I think the hardest part would be
integrating in another software, because MANY things of PythonCAD will need
to be recoded, mostly because you won't draw on your own canvas anymore,
and will need to use the host application's object types.
I think one path might be the most interesting: Since many of current
open-source 3D applications have a python console, an interesting thing
could be to try to turn PythonCAD into an importable python module. Then,
you can import PythonCAD into the host application, and play with it from
there, create entites, etc. Then, all you would need basically is an
"interface" that would convert PythonCAD entities into the host
application's entites type. Doing that way would also allow you not to
decide which application to support, but test them first and see what fits
your needs better.
Another thought I have on that matter: The biggest problem of python is
that it is slow. In a CAD application, this is in 90% of the time not
important. When you execute a drawing command, you don't care if it takes 2
milliseconds or 5 milliseconds. The only point where it can be important is
for example when redrawing the screen. If you have thousands of objects,
the redraw will take time. "Hosting" PythonCAD into another (OpenGL-based
for example) application would allow you to kill that problem. The host app
would take care of fast operations such as screen redraw, etc, and
PythonCAD takes care of stuff where speed is not important. So I think your
idea makes much sense.
FreeCAD already has a 2D module that's more or less working (I'd be glad
if someone here could have a look at it and give me some feedback :), but
blender is indeed a project that could be very interesting to look at. The
main problem I see is that currently in blender you can add stuff to the
scene with python, but not "draw" to the screen. That means, doing things
like seeing your line while you draw, or drawing snap marks is quite hard.
But that kind of things is expected to change drastically with the new 2.50
release. So it might be a perfect time to try something...
And the blender interface is *extremely* fast...
Sorry for the long bla-bla :)
----------------------------------------------------------------------
Comment By: yndesai (yndesai)
Date: 2009-06-18 14:31
Message:
That is a good thought . . .
Main thing which has kept me monitoring PythonCAD is its
AutoCAD type behavior. ie keyboard and mouse.
Making PythonCAD more to behave like AutoCAD can be our next goal.
----------------------------------------------------------------------
Comment By: Matteo Boscolo (matteoboscolo)
Date: 2009-06-18 11:37
Message:
In first istance we need to bacame stable and full featured 2d cad..
To move in 3d mens to rewrite in total the structure (for exsample point
have just 2d cooords)..
I Know that thare is a project in blender to make a blender a 3d
cad...(Written in python)
Pythoncad could be the 2d part of it...
Surfing on sourceforge there are a lot of 3d cad that are only 3d .. the
2d is very poor...
So In my Plan is to join a 3d opensource cad and make pythoncad the 2d
part of it..
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=1334597&aid=2808246&group_id=263167
|