<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>