472,989 Members | 3,088 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,989 software developers and data experts.

easy 3D graphics for rendering geometry?


What would be the easiest way to go about offering 3D graphics for the
purpose of rendering geometry?

Suppose engineers (my co-workes) have to design some enclosure,
nozzle, bracket, or whatever physical part/component, I would like to
write a program where they can at least see the resulting geometry and
navigate it, i.e., zoon-in/out, rotate, pan. On the side, I could
have data entry fields with the input parameters and when something is
changed, the graphics can be updated "immediately" (after the
necessary calculations have been done).

I know I need to learn something, and I am willing, I just need help
choosing what to learn.

I don't have any experience on this matter, don't know OpenGL, Mesa,
VTK, VRS, Maya...and all seem to have a steep learning curve. I don't
know any of the "other" graphics packages more oriented for game/
scenery/movie development (Panda, etc.), either.

I do know my trig and build my FEA parts parametrically from points,
to line, to surfaces, to volumes or from volume boolean algebra.

I would like the choice to be some kind of module/API that works
equally well on Linux as in Windows.

So:
What would be the easiest way?
and would it be worth learning?
or
is it better to shoot for something not so easy but worth learning?

thanks in advance for any pointers.

gsal

Nov 8 '07 #1
12 3847
On Nov 8, 6:53 am, gsal <salger...@gmail.comwrote:
What would be the easiest way to go about offering 3D graphics for the
purpose of rendering geometry?

Suppose engineers (my co-workes) have to design some enclosure,
nozzle, bracket, or whatever physical part/component, I would like to
write a program where they can at least see the resulting geometry and
navigate it, i.e., zoon-in/out, rotate, pan. On the side, I could
have data entry fields with the input parameters and when something is
changed, the graphics can be updated "immediately" (after the
necessary calculations have been done).

I know I need to learn something, and I am willing, I just need help
choosing what to learn.

I don't have any experience on this matter, don't know OpenGL, Mesa,
VTK, VRS, Maya...and all seem to have a steep learning curve. I don't
know any of the "other" graphics packages more oriented for game/
scenery/movie development (Panda, etc.), either.

I do know my trig and build my FEA parts parametrically from points,
to line, to surfaces, to volumes or from volume boolean algebra.

I would like the choice to be some kind of module/API that works
equally well on Linux as in Windows.

So:
What would be the easiest way?
and would it be worth learning?
or
is it better to shoot for something not so easy but worth learning?

thanks in advance for any pointers.

gsal
Hello,

Take a look at www.opencascade.org. This is a powerfull C++ library
for building CAE
(Computer Aided Engineering) applications. It also has a rather steep
learning curve,
but the resulting geometry could be easily exported to FEA packages.

Another possibility is www.salome-platform.org which is build on top
of OpenCascade. It has
a nice Python interface which makes the learning curve probably a
little more acceptable. A
downside is that, I think there are no Windows binaries yet.

Regards,

Marco Nawijn

Nov 8 '07 #2
On Nov 8, 6:53 am, gsal <salger...@gmail.comwrote:
What would be the easiest way to go about offering 3D graphics for the
purpose of rendering geometry?

Suppose engineers (my co-workes) have to design some enclosure,
nozzle, bracket, or whatever physical part/component, I would like to
write a program where they can at least see the resulting geometry and
navigate it, i.e., zoon-in/out, rotate, pan. On the side, I could
have data entry fields with the input parameters and when something is
changed, the graphics can be updated "immediately" (after the
necessary calculations have been done).

I know I need to learn something, and I am willing, I just need help
choosing what to learn.

I don't have any experience on this matter, don't know OpenGL, Mesa,
VTK, VRS, Maya...and all seem to have a steep learning curve. I don't
know any of the "other" graphics packages more oriented for game/
scenery/movie development (Panda, etc.), either.

I do know my trig and build my FEA parts parametrically from points,
to line, to surfaces, to volumes or from volume boolean algebra.

I would like the choice to be some kind of module/API that works
equally well on Linux as in Windows.

So:
What would be the easiest way?
and would it be worth learning?
or
is it better to shoot for something not so easy but worth learning?

thanks in advance for any pointers.

gsal
I recommend taking a look at Blender 3D: http://www.blender.org/
It is primarily a modeling, animation and rendering tool. However, my
favorite feature is the Python API which allows you to access most of
the functionality using Python. You can create simple GUIs and create
3d-objects programatically.

- Kjell Magne Fauske

Nov 8 '07 #3
I recommend taking a look at Blender 3D: http://www.blender.org/

Oh yeah, Blender is THE way to go. It's fantastic.

\d

Nov 8 '07 #4
gsal wrote:
What would be the easiest way to go about offering 3D graphics for the
purpose of rendering geometry?
Take a look at VPython. If you are pretty bright, give up a weekend
and do all you can in that one weekend. I think you will be amazed.
You will one day get to a point where it is not good enough for you,
but nowhere will you find so shallow a ramp to getting to competent,
relatively fully-featured, 3-D visualizations in simple, direct code.

-Scott David Daniels
Sc***********@Acm.Org
Nov 9 '07 #5
I actually did look at VPython last weekend. I managed to draw a
soccer field, a few players, move them around and even record/play-
back plays....I was very impressed on how easy it was to learn not
only VPython, but Python in the first...I did not know any python,
either.

I am not quite sure how I would go about building ANY geometry that I
would want, though. O.k., so they offer faces, but I did not quite
see how to go about using it...

gsal

Nov 9 '07 #6
By the way, VPython crashes my computer rather easily:

- launch the editor
- open python file
- press F5 to run
- when the graphical windows appears, attempt to manipulate (drag or
resize)
- the computer looses it...

At the end, sometimes, the computer looks like is trying to take care
of things but simply takes forever; other times, I end up with a blank
screen and an unresponsive computer and have to press the power button
for about 10 seconds to get it to power off.

gsal

Nov 9 '07 #7
By the way, VPython crashes my computer rather easily:

- launch the editor
- open python file
- press F5 to run
- when the graphical windows first appears, it will be accompanied by
a cursor AND a sand watch to indicate that python is busy doing
somethin...if before the watch goes away, I attempt to manipulate
(drag or resize) the window...
- ...the computer looses it!

At the end, sometimes, the computer looks like is trying to take care
of things but simply takes forever; other times, I end up with a
blank
screen and an unresponsive computer and have to press the power
button
for about 10 seconds to get it to power off.

gsal

Nov 10 '07 #8
gsal wrote:
By the way, VPython crashes my computer rather easily:

- launch the editor
- open python file
- press F5 to run
- when the graphical windows appears, attempt to manipulate (drag or
resize)
- the computer looses it...
Well, what kind of computer, what version of everything (OS, Python,
VPython), what display card, ....
Nov 10 '07 #9
gsal wrote:
I actually did look at VPython last weekend. I managed to draw a
soccer field, a few players, move them around and even record/play-
back plays....I was very impressed on how easy it was to learn not
only VPython, but Python in the first...I did not know any python,
either.
By the way, to get you completely hooked (I took a while to notice),
try adding the following to your soccer program:

import visual

<your functions and classes here>

if __name__ == '__main__':
visual.scene.stereo = 'passive'
visual.scene.stereodepth = 1
<your starting code here>
Nov 10 '07 #10
On Nov 10, 11:13 am, Scott David Daniels <Scott.Dani...@Acm.Org>
wrote:
>
Well, what kind of computer, what version of everything (OS, Python,
VPython), what display card, ....
Windows XP Professional
Version 2002, Service Pack 2
1.4GHz, 512MB

ATI MOBILITY RADEON 9000

Python 2.5, VPython 2.5

gsal

Nov 11 '07 #11
gsal wrote:
On Nov 10, 11:13 am, Scott David Daniels <Scott.Dani...@Acm.Org>
wrote:
>Well, what kind of computer, what version of everything (OS, Python,
VPython), what display card, ....

Windows XP Professional
Version 2002, Service Pack 2
1.4GHz, 512MB

ATI MOBILITY RADEON 9000

Python 2.5, VPython 2.5

gsal
Well, I'm running Python-2.5.1 and VPython 3.2.11 successfully on
an NVIDIA GeForce 7100 GS on XP. I generally don't see the problems
you are seeing. I know they are still struggling a bit with the
Windows code (due in part to Arthur Siegel's untimely demise) and
OpenGL on 2.5. Do simple things always break, or do you kind of
know what you do that breaks it?
BTW, there is a newsgroup/mailing list that you should know about
that I read on gmane: gmane.comp.python.visualpython.user

Are you including calls to sleep and/or rate in your loops?

-Scott
Nov 11 '07 #12
Scott David Daniels wrote:
gsal wrote:
>On Nov 10, 11:13 am, Scott David Daniels <Scott.Dani...@Acm.Org>
wrote:
>>Well, what kind of computer, what version of everything (OS, Python,
VPython), what display card, ....

Windows XP Professional
Version 2002, Service Pack 2
1.4GHz, 512MB

ATI MOBILITY RADEON 9000

Python 2.5, VPython 2.5

gsal

Well, I'm running Python-2.5.1 and VPython 3.2.11 successfully on
an NVIDIA GeForce 7100 GS on XP. I generally don't see the problems
you are seeing. I know they are still struggling a bit with the
Windows code (due in part to Arthur Siegel's untimely demise) and
OpenGL on 2.5. Do simple things always break, or do you kind of
know what you do that breaks it?
BTW, there is a newsgroup/mailing list that you should know about
that I read on gmane: gmane.comp.python.visualpython.user

Are you including calls to sleep and/or rate in your loops?

-Scott
Also, you can try VPython's newest beta for the _new_ style:
2007-11-10 4.beta20
Available on
http://sourceforge.net/projects/visualpython/
That has more, rather than less, performance issues for me,
but you might find it works more nicely with your video setup.

-Scott
Nov 11 '07 #13

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
by: Elaine Jackson | last post by:
I'm intrigued by the pedagogical possibilities of those Java applets where you can manipulate an image by mouse-dragging. Is there any prospect of doing something similar with Python? And if so,...
0
by: Brian K | last post by:
I am new to Apache Batik and I am now doing a SVG Editor for my project. I use Java as programming language. I use Batik to generate the SVG from Java Graphics2D, as I would like to transform...
7
by: Maxim Shemanarev | last post by:
I'd like to announce my project called Anti-Grain Geometry. http://www.antigrain.com Anti-Grain Geometry (AGG) is an Open Source, free of charge graphic library, written in industrially standard...
1
by: James dean | last post by:
Could someone explain how this works. I think the graphics card is used to do blitting and drawing shapes like rectangles. How does it draw using the Graphics card on the PC and why is this feature...
7
by: Dennis Benzinger | last post by:
Hi! Does anybody know of a SVG rendering library for Python? Bye, Dennis
5
by: Tim | last post by:
hi I used to do this Dim gfx As System.Drawing.Graphics = pic1.CreateGraphics gfx.FillEllipse blah blah blah to draw straight onto a form. but this is frowned up (slow).
5
by: Bytter | last post by:
Hi ppl, I've already posted this message through the mailing-list, but it seems it never arrived here. Strange... Anyway: I need to render high-quality vector graphics with Python. I was...
7
by: dave | last post by:
Hello: I have appl with a LOT of graphics developed in GDI+ It runs on XP( SP 2 ) and tablet PC. Q: Does 3.0 have more efficient graphics API that will work on XP(SP2) and Tablet PC ? ...
12
by: Xah Lee | last post by:
Of Interest: Introduction to 3D Graphics Programing http://xahlee.org/3d/index.html Currently, this introduction introduces you to the graphics format of Mathematica, and two Java Applet...
2
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 4 Oct 2023 starting at 18:00 UK time (6PM UTC+1) and finishing at about 19:15 (7.15PM) The start time is equivalent to 19:00 (7PM) in Central...
0
by: Aliciasmith | last post by:
In an age dominated by smartphones, having a mobile app for your business is no longer an option; it's a necessity. Whether you're a startup or an established enterprise, finding the right mobile app...
0
tracyyun
by: tracyyun | last post by:
Hello everyone, I have a question and would like some advice on network connectivity. I have one computer connected to my router via WiFi, but I have two other computers that I want to be able to...
2
by: giovanniandrean | last post by:
The energy model is structured as follows and uses excel sheets to give input data: 1-Utility.py contains all the functions needed to calculate the variables and other minor things (mentions...
3
NeoPa
by: NeoPa | last post by:
Introduction For this article I'll be using a very simple database which has Form (clsForm) & Report (clsReport) classes that simply handle making the calling Form invisible until the Form, or all...
1
by: Teri B | last post by:
Hi, I have created a sub-form Roles. In my course form the user selects the roles assigned to the course. 0ne-to-many. One course many roles. Then I created a report based on the Course form and...
3
by: nia12 | last post by:
Hi there, I am very new to Access so apologies if any of this is obvious/not clear. I am creating a data collection tool for health care employees to complete. It consists of a number of...
0
NeoPa
by: NeoPa | last post by:
Introduction For this article I'll be focusing on the Report (clsReport) class. This simply handles making the calling Form invisible until all of the Reports opened by it have been closed, when it...
3
SueHopson
by: SueHopson | last post by:
Hi All, I'm trying to create a single code (run off a button that calls the Private Sub) for our parts list report that will allow the user to filter by either/both PartVendor and PartType. On...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.