<div dir="ltr">Thanks for noticing this Andreas.<div><br></div><div>To answer your question generally, the functionality of the specification is expected to be unambiguous.</div><div><ul><li>X3D Architecture version 4.1 draft, clause 13 Geometry3D component, 

13.3.5 Extrusion</li><li><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4.1-CD/Part01/components/geometry3D.html#Extrusion">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4.1-CD/Part01/components/geometry3D.html#Extrusion</a></li></ul><div>To answer specifically, I believe we have always thought of <i>relative </i>distance along the spine as the fraction [0..1] and that is consistent with other u-v-w type mappings in the X3D specification.</div></div><div><br></div><div>What do you think of this suggested addition after the "Textures are mapped..." sentence that you have quoted above:</div><div><ul><li>"<span style="background-color:rgb(255,255,0)">Relative distances from beginning to end along the <i>crossSection </i>and <i>spine </i>curves are used to compute values in the range [0..1].</span>"</li></ul><div>Note that there might only be multiple coincident points for a <i>spine </i>vection, permitting rotations of the <i>crossSection</i> according to the orientations field about that single point.</div><div><br></div><div>As another potential special case, let's consider all <i>crossSection </i>points to be coincident.  Am not seeing anything in the specification forbidding that.  For a rendered result, am expecting to see a single line connecting each of those single-point <i>crossSection </i>perimeters, i.e. a line made up of segment(s) that gets extruded at an appropriate distance from the spine.</div></div><div><br></div><div>Editorially, I think we ought to be wary about defining forbidden ill-defined cases.  Such definitions can be unexpectedly ambiguous, and special handling (from forbidden status) might detract unnecessarily from Extrusion animations.</div><div><br></div><div>Of note is that we do have a number of example Extrusion nodes intended to test baseline capabilities and special cases.  If you or anyone thinks we should add more cases, please advise (single-point <i>crossSection </i>perhaps).</div><div><ul><li>X3D Example Archives: X3D4AM, X3D for Advanced Modeling, Geometric Shapes, Extrusion Examples Test</li><li><a href="https://www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/GeometricShapes/ExtrusionExamplesTestIndex.html">https://www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/GeometricShapes/ExtrusionExamplesTestIndex.html</a></li></ul></div><div>Thanks for noting and considering a possible specification improvement.  Have fun with X3D Extrusion!  😀</div><div><br></div><div>all the best, Don</div><div><br></div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Sat, Jul 12, 2025 at 11:40 PM Andreas Plesch via x3d-public <<a href="mailto:x3d-public@web3d.org">x3d-public@web3d.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Looking into how to generate texture coordinates for Extrusions with all coincident spine points, I noticed this section in the spec.:</div><div><br></div><div>"Textures are mapped so that the coordinates range in the U direction from 0 to 1 along the crossSection curve (with 0 corresponding to the first point in crossSection and 1 to the last) and in the V direction from 0 to 1 along the spine curve (with 0 corresponding to the first listed spine point and 1 to the last)."</div><div><br></div><div>V varies along the spine from 0 to 1. The spec. does not define how V should vary. x3dom uses the distance between spine points to define V. Another option may be to use the index of a spine point to define V. There may be other strategies.</div><div><br></div><div>Both options produce similar results if the spine points are regularly spaced. However, in the case of a spine with all coincident points, the results will be very different. Using distance, all Vs will be 0 (except for last to satisfy the spec.). Using the index, Vs will be distributed.</div><div><br></div><div>Should the spec. better define how Extrusion UVs should vary ? </div><div><br></div><div>Cheers, -Andreas</div><div><br></div></div>
_______________________________________________<br>
x3d-public mailing list<br>
<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a><br>
<a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noreferrer" target="_blank">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br>
</blockquote></div>