[x3d-public] Question about parametric primitives

Christopher Bruns cmbruns at rotatingpenguin.com
Thu Sep 14 19:16:45 PDT 2017


Thank you Vince for your prompt and thoughtful reply.

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.

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.

At this point I'd like to begin experimenting with existing browsers that
support X3D. Are there any written in python?

Regards,
Christopher

On Thu, Sep 14, 2017 at 10:10 AM, vmarchetti at kshell.com <
vmarchetti at kshell.com> wrote:

> Chris
>
> Your work sounds interesting, and thanks for your interest in X3D.
>
> 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:
>
> 1. Develop your own specification for the truncated cone, perhaps modeled
> on Cone [ http://www.web3d.org/documents/specifications/
> 19775-1/V3.3/Part01/components/geometry3D.html#Cone ] but with additional
> fields to define the truncation.
>
> 2. Modify an open source browser that will trap your custom node and
> render it with your new renderers within an X3D scene.
>
> 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 (
> http://www.web3d.org/documents/specifications/
> 19775-1/V3.3/Part01/concepts.html#PROTOinterfacedeclsemantics ), and
> based on existing X3D nodes such as TriangleSet constructed using a script.
>
> The same consideration and idea would hold for rendering an InfinitePlane
> node.
>
> 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.
>
> With Regards
>
> Vince Marchetti
> Web3D Consortium
>
> > On Sep 14, 2017, at 11:48 AM, Christopher Bruns <
> cmbruns at rotatingpenguin.com> wrote:
> >
> > I'd appreciate some advice about how to use the X3D format.
> >
> > 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?
> >
> > 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?
> >
> > _______________________________________________
> > x3d-public mailing list
> > x3d-public at web3d.org
> > http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20170914/19bb12cf/attachment.html>


More information about the x3d-public mailing list