CompuServe Thread

#Acad FACES for 3D Studio

12 messages in this thread
#33693From: kevin stuartFeb 19, 1992 10:38 AM
Hello All, We have a client drawing complex 3D structures in AutoCAD R11 that he wants rendered in 3D Studio by another firm. What is the proper way to draw 3D faces so that the normals are facing outward. Once drawn is there a way to verify that they are correct in Acad ? Thanks for your help , Kevin Stuart
#33730From: Randy Bush [Adesk]Feb 19, 1992 2:16 PM
Kevin – I'll pass this to our resident 3D Studio Studs, and you may also want to ask over on the "Asoft" forum. That's where a LOT of 3D Studio Studs and Studettes hang out. R@A
#33741From: Angelo Guarino [DTI Inc]Feb 19, 1992 3:25 PM
>> surface normals Kevin, The new release of BlockSOLID will have an SEDIT command (surface edit). One of the options of the SEDIT command is the Align option. This will take any surface entity in R11 and make all of the surface normals consistant. A Reverse command will "flip-flop" the normals. In this manner, the user doesn't have to worry about how they draw the faces, just draw away and then align them when your done.
#33805From: Craig Sharp [Mem TM]Feb 20, 1992 5:54 AM
Kevin: It has been my experience that there is no predictable way to make sure that the faces have the normals pointing in the same direction unless you make all of the faces 3 sided and contstruct them in a counterclockwise fashion when looking at the object from the viewing side (outside or inside). This is rather pointless, in my opinion, since your client will probably want to have models that use interior and exterior shots and getting this all sorted out isn't worth the time. (If blocksolid does this for four sided 3d faces they are in for a suprise…). It is much simpler to just define all of the materials as two sided… this increases rendering time somewhat, but doesn't require a computer modeler to sit at the computer trying to figure out what side of what face is up in AutoCAD. In this way, you let the cheapest per hour guy do the work, the computer… Using AME and creating true solids and maintaining their total form (whether you need it or not (e.g. tops and bottoms of walls…) will provide more predictable results. You can also get a copy of dxf23ds from the Asoft forum that will process the dxf file in short order, when compared to loading it into 3DS, welding, and unifying all of the faces. You should also create objects by layer… if there is going to be scaled texture maps on each wall, for example (e.g. brick) then you need to make each wall direction (N,S,E,W) on a separate layer so that each wall can be mapped in 3DS individually. This isn't entirely necessary, but it would help the 3DS operator. They should have a long talk with whoever is going to do the work. C#
#33865From: Angelo Guarino [DTI Inc]Feb 20, 1992 4:56 PM
Craig, We in fact do surface welding, aligning, and offsetting. This will work with any surface entity: 3D faces …3 & 4 sided Surface meshes (Rulesurfs, edgesurf, revsurf, etc) P-face meshes … these may include both 3-sided and 4-sided p-faces Exploded AME solids (just a collection of P-face meshes). For instance, you can to the following: Make a couple RULESURF's which share edges. Also on some other edges, add some hand drawn 3D faces, and a P-face mesh or 2. Run the SEDIT command, and with the Join option, "weld" all of these entities into a single mesh. During this proceedure, all redundant vertecies are removed and the faces are re-indexed (we also handle the "-" indexes for invisable edges correctly). Next, using the Align option, all the faces in this mesh are aligned with the "1st" face of the mesh such that all the surface normals are consistent. If the 1st face's normal was pointing in the wrong direction, a Reverse option simple reverses the connectivity (surface normal direction) for the mesh. If this mesh represents the outside or inside surface of a constant thickness part, then the SOFFSET command will generate the other surface (either inside or outside), and seal the edges if instructed. This new mesh's normals are also consistent with the previos one. We really can do these things … really… in not kidding .. <g> Ang
#33942From: Craig Sharp [Mem TM]Feb 21, 1992 6:30 AM
Angelo: I didn't mean to imply that Block solid couldn't do them, or in any way was deficient. I meant to imply that I don't think you can predict what any open meshed (and possibly many close meshed) objects in AutoCAD are going to do in 3DS. Until Autodesk provides surface normal information for their 3Dfaces, then any conversion will either be VERY time consuming (i.e. it has to design the 'world' that the model is sitting in to determine what direction the intended normal is) or inaccurate. If you only create solid meshes, that doesn't help me when I have a roof plane and a wall plane… I want the two to be placed in 3DS as separate objects and if they are part of the same mesh, I don't know how to do that. Maybe I'm missing something. C#
#33946From: Angelo Guarino [DTI Inc]Feb 21, 1992 7:46 AM
>> maybe I'm missing something Craig, Maybe what your "missing" is the details on how BlockSOLID does this. I think this will clear it up…. In the SEDIT/Join command, we infact combine all the MxN meshes, p-face meshes and 3D Faces into one P-face mesh. Once this is done, you can use the SEDIT/Align command to make all of those faces IN THAT MESH consistent with the 1st face in that mesh. If that face was "pointed the wrong direction", then the SEDIT/Reverse command will "flip-flop" the entire mesh. So you see, we are addressing the problem by "imbedding" the 4-sided, 3D faces into a P-face mesh and then doing an orientation check on the unified mesh. Since P-face meshed are supported by 3DS, this is a reasonable solution. Hope that clears it up…. Ang
#34023From: Craig Sharp [Mem TM]Feb 21, 1992 5:03 PM
Angelo: I DON'T WANT THEM COMBINED…. C#
#34377From: Angelo Guarino [DTI Inc]Feb 24, 1992 7:35 AM
>>I DON'T WANT THEN COMBINED … Craig, THEN EXPLODE THE MESH AFTER YOU ARE DONE… Ang
#34487From: Craig Sharp [Mem TM]Feb 24, 1992 5:19 PM
Angelo: Do you combine meshes from two different layers? If I explode them don't I end up with a bunch of faces? Are these 3 or four sided faces? Once you've aligned the normals, if you don't leave them as closed meshes, I don't believe you will be guaranteed that 3DS will keep them aligned… which is what I believe my original point was… and what the original question was. I mean, I can be mistaken since I've never used Block Solid, but I think you need to spend a little time making sure of what I'm talking about. I can't imagine (doesn't mean that there isn't) any way to currently guarantee that a non-closed mesh will translate properly to 3DS. And, I have no idea what would happen if a closed mesh were made up of two layers (I've never tried this….) but as soon as 3DS takes it apart, it can't tell where the normals should face. Am I communicating my point, yet? C#
#34495From: Angelo Guarino [DTI Inc]Feb 24, 1992 5:56 PM
>> different faces on different layers.. get it? Craig, I'm STARTING <g> to understand what your concerns are. I guess I may be falling into the trap of knowing too much about my own product and not communicating properly. The joining and aligning commands are separate command and thus if you have "one item" and want tha item on different layers, "I would" probably approach the problem in the following manner. First – I would join the entire model with then align the "part" thus ensuring that the normals are consistent to describe this part. Second – I would expode the part and then join the "sections" of the part that reside on the same layer and that are contiguous. Third – I would then change the layer defiintions appropriately. In this manner I believe you will have all that was asked for (even though I don't remember the originator of this thread requesting faces on the same part existing on differnt layers). By joining and aligning the entire part first and then exploding, you are ensured that subsequent joined "sections" have consistent normal definitions. Ang
#34519From: Craig Sharp [Mem TM]Feb 24, 1992 8:03 PM
Angelo: No, you are very clear now and I don't agree with you. You can't send disjointed faces or pmesh surfaces to 3DS and guarantee that all of the face normals will be aligned. If you leave the meshes together (closed) then you have to separate them into objects once you're in 3DS. You get to do the work one way or the other unless you simply create the objects in 3DS in the first place. And that is what I was trying to explain to the person that I was talking with… and why I noted that if you guarantee to your customers that faces will be aligned you need to make a more detailed statement than that… or you will end up with some unhappy customers. I have been round and round about this with Gary Yost and I finally understand what is happening since he has been patient enough to explain it to me. Since it is to our benefit to originate the drawings in AutoCAD, I find it best to use two sided materials in 3DS and let the computer do the work. There is no big advantage to make buildings up from solids, either. Too cumbersome and big file oriented for me. Yes, it would be nice to tell the client how much his building weighs..<g>… but we will stick with building the thing face by face. It does seem, BTW, that DXF23DS does do a better job of converting the file, and it is MUCH faster than 3DS 1.0 at doing it, too! C#