<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Christopher,<br>
<br>
Answers embedded...<br>
<br>
</div>
<blockquote type="cite"
cite="mid:CADXPhjdxJxcohCVgOd8m-yeLvgjSVZcbH_wzDGpZ4jkw0n7x1w@mail.gmail.com">
<div dir="ltr">Thank you Vince for your prompt and thoughtful
reply.
<div><br>
</div>
<div>The TruncatedCone primitive (or, equivalently,
TaperedCylinder) would be straightforward to model based on
existing structures, and could be implemented using a
TriangleSet, so that all browsers would have little trouble
rendering such a thing.</div>
<div><br>
</div>
<div>InfinitePlane, on the other hand, is not so similar to
existing structures. Basing InfinitePlane on
ObscenelyLargeRectangle would be imperfect, as would basing it
on a half-invisible cube map. Perhaps only a very specialized
rendering implementation would be appropriate for such a
primitive.</div>
</div>
</blockquote>
<br>
You can't use "ObscenelyLargeRectangle" because the vertices will be
beyond the far clipping plan. This will cause the geometry to not be
there. Also lighting calculations are based on vertices (and center
point). If you have any gradation of lighting over the surface, it
won't show. It would be better to tile the "virtual" plan out to the
far clipping plane. There is no sense going much beyond that because
it would never show, though going a bit beyond so there is always
"something" there is useful.<br>
<br>
<blockquote type="cite"
cite="mid:CADXPhjdxJxcohCVgOd8m-yeLvgjSVZcbH_wzDGpZ4jkw0n7x1w@mail.gmail.com">
<div dir="ltr">
<div>At this point I'd like to begin experimenting with existing
browsers that support X3D. Are there any written in python?</div>
</div>
</blockquote>
<br>
The list of X3D players (open and otherwise) is at
<a class="moz-txt-link-freetext" href="http://www.web3d.org/x3d/content/examples/X3dResources.html#Applications">http://www.web3d.org/x3d/content/examples/X3dResources.html#Applications</a><br>
<br>
I don't know of any written in Python. X3DOM and Cobweb are written
in JavaScript so that they can run in the browser. C/C++/C# is
another frequent language. There are a couple written in Java.<br>
<br>
<br>
Leonard Daly<br>
<br>
<br>
<br>
<blockquote type="cite"
cite="mid:CADXPhjdxJxcohCVgOd8m-yeLvgjSVZcbH_wzDGpZ4jkw0n7x1w@mail.gmail.com">
<div dir="ltr">
<div><br>
</div>
<div>Regards,</div>
<div>Christopher</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Thu, Sep 14, 2017 at 10:10 AM, <a
href="mailto:vmarchetti@kshell.com" moz-do-not-send="true">vmarchetti@kshell.com</a>
<span dir="ltr"><<a href="mailto:vmarchetti@kshell.com"
target="_blank" moz-do-not-send="true">vmarchetti@kshell.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">Chris<br>
<br>
Your work sounds interesting, and thanks for your interest
in X3D.<br>
<br>
There is no node in X3D that already represents a truncated
cone, and I cannot come up with a better combination than
your idea of a cone combined with a clipping plane. However,
it may be useful for your project to step back and exploit
some of the advantages of X3D. It is an open standard with
free (available at no cost) specification, and a number of
open-source viewers available; for example Xj3D and FreeWRL.
This suggests another development route:<br>
<br>
1. Develop your own specification for the truncated cone,
perhaps modeled on Cone [ <a
href="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Cone"
rel="noreferrer" target="_blank" moz-do-not-send="true">http://www.web3d.org/<wbr>documents/specifications/<wbr>19775-1/V3.3/Part01/<wbr>components/geometry3D.html#<wbr>Cone</a>
] but with additional fields to define the truncation.<br>
<br>
2. Modify an open source browser that will trap your custom
node and render it with your new renderers within an X3D
scene.<br>
<br>
Of course, you now have a node feature that only you can
use, because only you have an X3D viewer for it. If your
purpose is to explore and develop new rendering techniques
then X3D will have served as your prototyping environment.
However, if your goal is to allow others to specifically use
a TruncatedCone node, then you may want to submit it to the
Web3D Consortium as a proposed extension. It would gain much
likelier acceptance if it did not depend on your specific
rendering implementation, so a suggested route would be for
you (or perhaps someone else) to develop an additional
TruncatedCone implementation using X3D's prototyping
mechanism ( <a
href="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#PROTOinterfacedeclsemantics"
rel="noreferrer" target="_blank" moz-do-not-send="true">http://www.web3d.org/<wbr>documents/specifications/<wbr>19775-1/V3.3/Part01/concepts.<wbr>html#<wbr>PROTOinterfacedeclsemantics</a>
), and based on existing X3D nodes such as TriangleSet
constructed using a script.<br>
<br>
The same consideration and idea would hold for rendering an
InfinitePlane node.<br>
<br>
Please continue to post your ideas and questions to the
mailing list; and we would also welcome your membership in
the Web3D Consortium where you would be able to participate
in regular teleconferences where proposed extensions to X3D
are discussed.<br>
<br>
With Regards<br>
<br>
Vince Marchetti<br>
Web3D Consortium<br>
<div>
<div class="h5"><br>
> On Sep 14, 2017, at 11:48 AM, Christopher Bruns
<<a href="mailto:cmbruns@rotatingpenguin.com"
moz-do-not-send="true">cmbruns@rotatingpenguin.com</a>>
wrote:<br>
><br>
> I'd appreciate some advice about how to use the X3D
format.<br>
><br>
> I'm developing some renderers that use non-mesh
display methods for certain parametric primitives,
including spheres, cylinders, truncated cones, and
infinite planes. And I'm considering using X3D as my
scene file format. I'm pleased to see that parametric
representations for spheres and cylinders, at least, are
available in X3D. I suspect that I could represent
parametric truncated cones using either 1) a cone
primitive plus a clip plane, or 2) a cylinder with a
projective transformation. But I would prefer a more
direct semantic representation of a truncated cone. Is
there a way to explicitly represent a parametric
truncated cone?<br>
><br>
> A possibly more difficult problem is representing
an infinite plane as a scene object. I wonder if perhaps
some sort of degenerate NURBS surface might represent an
infinite plane? Alternatively I could represent a plane
using a single vertex plus a normal vector, along with
some sort of annotation. Is there a more direct way to
represent an infinite plane in X3D?<br>
><br>
</div>
</div>
> ______________________________<wbr>_________________<br>
> x3d-public mailing list<br>
> <a href="mailto:x3d-public@web3d.org"
moz-do-not-send="true">x3d-public@web3d.org</a><br>
> <a
href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org"
rel="noreferrer" target="_blank" moz-do-not-send="true">http://web3d.org/mailman/<wbr>listinfo/x3d-public_web3d.org</a><br>
<br>
</blockquote>
</div>
<br>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
x3d-public mailing list
<a class="moz-txt-link-abbreviated" href="mailto:x3d-public@web3d.org">x3d-public@web3d.org</a>
<a class="moz-txt-link-freetext" href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a>
</pre>
</blockquote>
<p><br>
</p>
<div class="moz-signature">-- <br>
<font class="tahoma,arial,helvetica san serif" color="#333366">
<font size="+1"><b>Leonard Daly</b></font><br>
3D Systems & Cloud Consultant<br>
LA ACM SIGGRAPH Chair<br>
President, Daly Realism - <i>Creating the Future</i>
</font></div>
</body>
</html>