Hi
Sometime back you wrote that you have a code that generates a rounded stick like 
object.Vis a vis that message,I want to know,how can I implement irregular surfaces in 
java 3d for developing a structure of human bones...

Kindly help me out.

On Mon, 08 Dec 2003 Paul Pantera wrote :
>I can help you with GeometryInfo problems.
>
>>I have some code that generates a 'rounded stick' like object I use for
>>creating molecular stick models. The GeometryInfo class interests me and
>>looks like it could save me a lot of work. That is if I could get it to
>>work.
>>
>>Case 1:
>>
>>def createNormals(self):
>>  gi = GeometryInfo(GeometryInfo.TRIANGLE_ARRAY| LineArray.COLOR_3)
>
>The prmitive sent to GeometryInfo is one of the five primitives listed
>in the javadoc (POLYGON_ARRAY, QUAD_ARRAY, TRIANGLE_ARRAY, TRIANGLE_FAN_ARRAY,
>or TRIANGLE_STRIP_ARRAY).  Why are you or'ring GeometryInfo.TRIANGLE_ARRAY
>with LineArray.COLOR_3?  That's wrong.
>
>GeometryInfo will know that you have colors when you set the colors
>using setColors().  You do not need to send a flag to the constructor
>to inform it that you will be using colors.  GeometryInfo was
>designed to be more flexible than GeometryArray, and this is one
>example of how I tried to achieve that.
>
>>  gi.setCoordinates(self.verts)
>>  nm = NormalGenerator()
>
>NormalGenerator nm = new NormalGenerator();
>
>>  nm.generateNormals(gi)
>>  si = Stripifier()
>
>Stripifier si = new Stripifier();
>
>>  si.stripify(gi)
>>  return gi.getGeometryArray(1,0,0)
>
>return gi.getGeometryArray(true, false, false);
>
>>
>>Result:
>>
>>java.lang.IllegalArgumentException: StripCounts inconsistent with primitive
>>at com.sun.j3d.utils.geometry.GeometryInfo.checkForBadData
>
>This error means that you have set stripCounts on a primitive that
>doesn't require it, or vice-versa.  TRIANGLE_ARRAY and
>QUAD_ARRAY don't require stripCounts, the other three primitive
>types do.
>
>GeometryInfo is confused about the primitive because you sent the
>LineArray.COLOR_3 flag to the constructor.  LineArray.COLOR_3 is
>4 and GeometryInfo.TRIANGLE_ARRAY is 1 so you are sending 1 | 4 = 5
>to the constructor.  This corresponds to GeometryInfo.POLYGON_ARRAY
>so GeometryInfo is expecting polygons.  This is why it needs a
>stripCounts arry, which you didn't set, hence the error.  (To find
>these values, in the javadoc, click on the constant and then click
>on "See Also: Constant Field Values."  See here:
>
>http://hendrix.lems.brown.edu/~arw/online-docs/java3d-1.3.0-docs/constant-values.html
>
>
>>Yet it works if I create a GeometryArray.TRIANGLE_ARRAY with the same data
>>it works.
>>
>>Huh ?
>
>The primitive type constants for GeometryInfo are separate from those
>for GeometryArray.  You need to use the GeometryInfo primitive
>constants for GeometryInfos and the GeometryArray constants for
>GeometryArrays.
>
>-Paul Pantera
>  Chief Architect, PresidioLabs, Inc.
>  1-650-766-1517
>
>===========================================================================
>To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
>of the message "signoff JAVA3D-INTEREST".  For general help, send email to
>[EMAIL PROTECTED] and include in the body of the message "help".


Sikander Hayat
F/0 Engineering and Technology
Jamia Millia Islamia
New Delhi
----------------------------------- +
LIVE BY THE SWORD,DIE BY THE SWORD  |
----------------------------------- +

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA3D-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to