Message 1 of 1
Getting smooth lined HLR projection from a mesh
Not applicable
11-27-2006
04:16 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
Hi all,
I still have newbie status with AutoCAD and the objectARX environment, so I apologize if this is a stupid question 🙂
I am using 2005 for both of the above.
To give you a very basic scope of my project as it is, I have 4 classes:
1.) has functions which make surface primitives using AcDbPolyfaceMesh and adds the meshes to the main model space
2.) has functions which make AcDb3dSolid representations of 1.) and adds these only to the database, so they're not visible
3.) has functions which make different elements by calling the surface primitives one or more times; also calls the relevant solid primitive from 2.)
4.) is a hidden line remover and 2D projecter, which uses the HLRAPI available with objectARX in /utils, and which for now takes AcDbObjectId's pointing to
AcDb3dSolid's as input, and appends the output from the HLRAPI (lines and curves) to the model space
Now to give you a simple example of what I want to accomplish, I have a simple surface primitive function called makeSimpleTube(), which appends a meshed,
hollow, open-ended cylinder to the model space. In my element class I have a function called makeLongTube() which calls both 1.) and 2.)'s makeSimpleTube()
function. So I type a command LONGTUBE and it calls makeLongTube(), and then I can freely orbit around my "long tube" to get a desired view.
Now I want to be able to select this mesh, type the command HLR, and receive, in this mesh's place, the smooth lines and curves resulting from the
AcDbObjectId of the solid in the database being sent to my 4.) class. So I guess that I somehow need to have this mesh associated with the AcDb3dSolid which
is in the database. Moreover, I would like the group of lines and curves to still be associated with the solid that they came from, so that I can add
another 3D mesh to the space, select both the group of lines and the mesh, and do an HLR of their associated solids.
Any ideas? Feel free to butcher my general project layout in order to get a solution; it's definitely not set in stone.
I still have newbie status with AutoCAD and the objectARX environment, so I apologize if this is a stupid question 🙂
I am using 2005 for both of the above.
To give you a very basic scope of my project as it is, I have 4 classes:
1.) has functions which make surface primitives using AcDbPolyfaceMesh and adds the meshes to the main model space
2.) has functions which make AcDb3dSolid representations of 1.) and adds these only to the database, so they're not visible
3.) has functions which make different elements by calling the surface primitives one or more times; also calls the relevant solid primitive from 2.)
4.) is a hidden line remover and 2D projecter, which uses the HLRAPI available with objectARX in /utils, and which for now takes AcDbObjectId's pointing to
AcDb3dSolid's as input, and appends the output from the HLRAPI (lines and curves) to the model space
Now to give you a simple example of what I want to accomplish, I have a simple surface primitive function called makeSimpleTube(), which appends a meshed,
hollow, open-ended cylinder to the model space. In my element class I have a function called makeLongTube() which calls both 1.) and 2.)'s makeSimpleTube()
function. So I type a command LONGTUBE and it calls makeLongTube(), and then I can freely orbit around my "long tube" to get a desired view.
Now I want to be able to select this mesh, type the command HLR, and receive, in this mesh's place, the smooth lines and curves resulting from the
AcDbObjectId of the solid in the database being sent to my 4.) class. So I guess that I somehow need to have this mesh associated with the AcDb3dSolid which
is in the database. Moreover, I would like the group of lines and curves to still be associated with the solid that they came from, so that I can add
another 3D mesh to the space, select both the group of lines and the mesh, and do an HLR of their associated solids.
Any ideas? Feel free to butcher my general project layout in order to get a solution; it's definitely not set in stone.