[x3d-public] [x3dom/x3dom] Best approach to visualize of dimensions (PMI data) (#913)

Andreas Plesch andreasplesch at gmail.com
Thu Dec 20 05:37:26 PST 2018


Here is an inquiry from github which seems better suited to the mailing
lists.

-Andreas

---------- Forwarded message ---------
From: theveloped <notifications at github.com>
Date: Thu, Dec 20, 2018 at 5:40 AM
Subject: [x3dom/x3dom] Best approach to visualize of dimensions (PMI data)
(#913)
To: x3dom/x3dom <x3dom at noreply.github.com>
Cc: Subscribed <subscribed at noreply.github.com>


Does anyone have any experience with the visualization of model dimensions
and other model-related information in an x3dom instance? For our final
solution, we would like to show all the PMI data of an object as per the
examples of NIST:
https://pages.nist.gov/CAD-PMI-Testing/graphical-pmi-viewer.html

To get started we would like to show the three dimensions of the bounding
box in a using leaders aligned to the bounding box:
[image: example of isometric aligned dimensioning]
<https://camo.githubusercontent.com/1df1afb03290cc8087a2b1791c90c9b712692d90/68747470733a2f2f69302e77702e636f6d2f7777772e6e6569742e6564752f626c6f672f77702d636f6e74656e742f75706c6f6164732f323031352f30392f49736f2d372e6a7067>
Idealy of the the 12 edges of the bounding box we would constantly show the
3 perpendicular edges that are best visible.

Any idea's on the subject are most welcome. At the moment we are mainly
looking at:

   - NIST PMI examples
   <https://pages.nist.gov/CAD-PMI-Testing/graphical-pmi-viewer.html>(no
   info on the generation of the x3d)
   - cadjs <https://github.com/ghemingway/cad.js/tree/master> (uses threejs
   over x3dom)

For reference the bounding box dimensions/position of an x3d element can be
computed using the is currently computed using:

compute_boundingbox: function(part) {
        var node = part._x3domNode
        var volume = node.getVolume();

        var min = new x3dom.fields.SFVec3f();
        var max = new x3dom.fields.SFVec3f();

        volume.getBounds(min, max);

        var dimensions = max.subtract(min);
        var position = volume.center

        console.log("Dimensions: " + dimensions.x + " " + dimensions.y
+ " " + dimensions.z);
        console.log("Position: " + position.x + " " + position.y + " "
+ position.z);
    },

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<https://github.com/x3dom/x3dom/issues/913>, or mute the thread
<https://github.com/notifications/unsubscribe-auth/AF4p60WEngT8eCA5jnu-rPw8G03wMvS9ks5u62kUgaJpZM4Zb7cb>
.


-- 
Andreas Plesch
Waltham, MA 02453
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20181220/65b09aa0/attachment.html>


More information about the x3d-public mailing list