<p class="MsoNormal"><span lang="EN-GB">Hi Felipe,</span></p>

<p class="MsoNormal"><span lang="EN-GB"> </span></p>

<p class="MsoNormal"><span lang="EN-GB">The first
problem is about TouchSensor.</span></p>

<p class="MsoNormal"><span lang="EN-GB"> </span></p>

<p class="MsoNormal"><span lang="EN-GB">I have the
following X3D main file:</span></p>

<table class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0" style="border-collapse:collapse;border:none">
 <tbody><tr>
  <td width="576" valign="top" style="width:432.2pt;border:solid windowtext 1.0pt;padding:0cm 5.4pt 0cm 5.4pt">
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt"><?xml version='1.0' encoding='UTF-8'?></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt"><X3D profile='Interactive' version='3.2'></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt">                <Scene></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt">                               <Group></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt">                                               <Transform></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt">                                                               <Inline
  DEF="1-ClosureSurface-2-Desktop"
  url="1-ClosureSurface-2-Desktop.x3d" /></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt">                                                               <TouchSensor
  DEF="TouchSensor-1-ClosureSurface-2-Desktop" /></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt">                                               </Transform></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt">                                               <Transform></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt">                                                               <Inline
  DEF="2-ClosureSurface-2-Desktop"
  url="2-ClosureSurface-2-Desktop.x3d" /></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt">                                                               <TouchSensor
  DEF="TouchSensor-2-ClosureSurface-2-Desktop" /></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt">                                               </Transform></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt">                                               <Transform></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt">                                                               <Inline
  DEF="2-WallSurface-2-Desktop"
  url="2-WallSurface-2-Desktop.x3d" /></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt">                                                               <TouchSensor
  DEF="TouchSensor-2-WallSurface-2-Desktop" /></span></p>
  <p class="MsoNormal"><span lang="FR" style="font-size:9.0pt">                                               </span><span lang="EN-GB" style="font-size:9.0pt"></Transform></span></p>
  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9.0pt">                               </Group></span></p>
  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9.0pt">                </Scene></span></p>
  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9.0pt"></X3D></span><span lang="EN-GB"></span></p>
  </td>
 </tr>
</tbody></table>

<p class="MsoNormal"><span lang="EN-GB"> </span></p>

<p class="MsoNormal"><span lang="EN-GB">Xj3D
visualizes the geometry of the 3 inlines correctly. However, the problem is
that the TouchSensor node works when it wants. </span></p><p class="MsoNormal"><span lang="EN-GB"><br></span></p>

<p class="MsoNormal"><span lang="EN-GB">I have the
following code where I enable all TouchSensor:</span></p>

<table class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0" style="border-collapse:collapse;border:none">
 <tbody><tr>
  <td width="576" valign="top" style="width:432.2pt;border:solid windowtext 1.0pt;padding:0cm 5.4pt 0cm 5.4pt">
  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">…</span></p>
  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">NodeList listOfTouchSensor =
  doc.getElementsByTagName(</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#2a00ff">"TouchSensor"</span><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">);</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""> </span></p>
  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">             </span><b><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#7f0055">for</span></b><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'"> (</span><b><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#7f0055">int</span></b><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'"> i = 0;
  i < listOfTouchSensor.getLength(); i++) {</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>
  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">                    String
  nombreTouchSensor = listOfTouchSensor.item(i)</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>
  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">                                  .getAttributes().getNamedItem(</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#2a00ff">"DEF"</span><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">).getNodeValue();</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""> </span></p>
  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">                    </span><span lang="FR" style="font-size:9pt;font-family:'Courier New'">X3DNode touch = </span><i><span lang="FR" style="font-size:9.0pt;font-family:"Courier New";color:#0000c0">mainScene</span></i><span lang="FR" style="font-size:9pt;font-family:'Courier New'">.getNamedNode(nombreTouchSensor);</span><span lang="FR" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="FR" style="font-size:9pt;font-family:'Courier New'">                    </span><b><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#7f0055">if</span></b><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'"> (touch == </span><b><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#7f0055">null</span></b><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">) {</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">                           System.</span><i><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#0000c0">out</span></i><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">.println(</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#2a00ff">"Couldn't find TouchSensor named: "</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">                                        </span><span lang="FR" style="font-size:9pt;font-family:'Courier New'">+ nombreTouchSensor);</span><span lang="FR" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="FR" style="font-size:9pt;font-family:'Courier New'">                           </span><b><span lang="FR" style="font-size:9.0pt;font-family:"Courier New";color:#7f0055">return</span></b><span lang="FR" style="font-size:9pt;font-family:'Courier New'">;</span><span lang="FR" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="FR" style="font-size:9pt;font-family:'Courier New'">                    }
  </span><b><span lang="FR" style="font-size:9.0pt;font-family:"Courier New";color:#7f0055">else</span></b><span lang="FR" style="font-size:9pt;font-family:'Courier New'"> {</span><span lang="FR" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="FR" style="font-size:9pt;font-family:'Courier New'">                           System.</span><i><span lang="FR" style="font-size:9.0pt;font-family:"Courier New";color:#0000c0">out</span></i><span lang="FR" style="font-size:9pt;font-family:'Courier New'">.println(</span><span lang="FR" style="font-size:9.0pt;font-family:"Courier New";color:#2a00ff">"Sensor: "</span><span lang="FR" style="font-size:9pt;font-family:'Courier New'"> + nombreTouchSensor);</span><span lang="FR" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="FR" style="font-size:9pt;font-family:'Courier New'">                    </span><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">}</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">                    SFTime
  ttime = (SFTime) touch.getField(</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#2a00ff">"touchTime"</span><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">);</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">                    ttime.setUserData(nombreTouchSensor.split(</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#2a00ff">"-"</span><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">)[1]);</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">                    ttime.addX3DEventListener(miXJ3DPanel);</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">                    </span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>
  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">                    </span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>
  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">             </span><span style="font-size:9pt;font-family:'Courier New'">}</span><span style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Courier New""> </span></p>
  <p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Courier New"">…</span></p>
  <p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Courier New""> </span></p>
  <p class="MsoNormal"><span style="font-size:9pt;font-family:'Courier New'">       </span><b><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#7f0055">public</span></b><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'"> </span><b><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#7f0055">void</span></b><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">
  readableFieldChanged(X3DFieldEvent evt) {</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>
  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">             X3DField
  <u>src</u> = (X3DField) evt.getSource();</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>
  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">             System.</span><i><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#0000c0">out</span></i><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">.println(</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#2a00ff">"Stop touching me!"</span><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">);</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">             System.</span><i><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New";color:#0000c0">out</span></i><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">.println(evt.getData().toString());</span><span lang="EN-GB" style="font-size:9.0pt;font-family:"Courier New""></span></p>

  <p class="MsoNormal"><span lang="EN-GB" style="font-size:9pt;font-family:'Courier New'">       </span><span style="font-size:9pt;font-family:'Courier New'">}</span><span lang="EN-GB"></span></p>
  </td>
 </tr>
</tbody></table>

<p class="MsoNormal"><span lang="EN-GB"> </span></p>

<p class="MsoNormal"><span lang="EN-GB"> </span></p>

<p class="MsoNormal"><span lang="EN-GB">Sometimes
all TouchSensor works fine. But in most cases one or two of them can’t be
touched, the mouse icon doesn’t change to the TouchSensor icon. I tried also putting
one TouchSensor node for all Inlines and happen the same.</span></p>

<p class="MsoNormal"><span lang="EN-GB"> </span></p>

<p class="MsoNormal"><span lang="EN-GB">Have you
had this problem before?</span></p>

<div style="border:none;border-bottom:solid windowtext 1.0pt;padding:0cm 0cm 1.0pt 0cm">

<p class="MsoNormal" style="border:none;padding:0cm"><span lang="EN-GB"> </span></p>

</div>

<p class="MsoNormal"><span lang="EN-GB"> </span></p>

<p class="MsoNormal"><span lang="EN-GB">The other
problem is that I need some functionality and reading the documentation I didn’t
find it.</span></p>

<p class="MsoNormal"><span lang="EN-GB">I need the
methods to know the current viewpoint, the viewing frustum, projection matrix,
etc.</span></p>

<p class="MsoNormal"><span lang="EN-GB">In the same
way it is possible to select an area of the model using a bounding box?</span></p>

<p class="MsoNormal"><span lang="EN-GB"> </span></p>

<p class="MsoNormal"><span lang="EN-GB"> </span></p>

<p class="MsoNormal"><span lang="EN-GB">I have many
issues.</span></p>

<p class="MsoNormal"><span lang="EN-GB"> </span></p>

<p class="MsoNormal"><span lang="EN-GB">Thanks in
advance</span></p>

<p class="MsoNormal"><span lang="EN-GB"> </span></p>

<p class="MsoNormal"><span lang="EN-GB">Best
regards</span></p><br><div class="gmail_quote">On 12 April 2012 22:06, Felipe Bacim <span dir="ltr"><<a href="mailto:fbacim@vt.edu">fbacim@vt.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Iñaki,<div><br></div><div>we've been using Xj3D with SAI for quite a while here at Virginia Tech. Is there anything specific you need to do that you can't do with Xj3D?</div><div><br></div><div>Felipe<br><br><div class="gmail_quote">
<div><div class="h5">

On Thu, Apr 12, 2012 at 9:43 AM, Iñaki Prieto Furundarena <span dir="ltr"><<a href="mailto:prieto.inaki@gmail.com" target="_blank">prieto.inaki@gmail.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><div class="h5">

<p class="MsoNormal"><span lang="EN-GB">Hi all,</span></p><p class="MsoNormal"><span lang="EN-GB"><br></span></p><p class="MsoNormal"><span lang="EN-GB">What is the
best library to implement applications that load and manipulate X3D files in
Java?</span></p>

<p class="MsoNormal"><span lang="EN-GB">I tried
with Xj3D and CyberX3D. Is there any other?</span></p>

<p class="MsoNormal"><span lang="EN-GB"> </span></p>

<p class="MsoNormal"><span lang="EN-GB">Thanks in
advance</span></p>

<p class="MsoNormal"><span lang="EN-GB"> </span></p>

<p class="MsoNormal"><span lang="EN-GB">Best
regards</span></p><span><font color="#888888"><div><br></div>-- <br><div>Iñaki Prieto Furundarena</div><br>
</font></span><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" target="_blank">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br>
<br></blockquote></div><br></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div>Iñaki Prieto Furundarena</div><br>