<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Andreas,<br>
<br>
The relevant portion of the spec is at
<a class="moz-txt-link-freetext" href="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/navigation.html#X3DViewpointNode">http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/navigation.html#X3DViewpointNode</a>,
in particular paragraph e2. It goes:<br>
<br>
e. When a set_bind <span class="code">TRUE</span> event is
received by an <i>X3DViewpointNode</i> node,<br>
1. ...<br>
2. If the node is already at the top of the stack, this event
has no affect.<br>
<br>
It should not work to send a 'set_bind' event to the VP node. Also
unbinding, then binding the node, then paragraph f3 counts:<br>
<br>
f. When a <i>set_bind</i> <code>FALSE</code> event is received
by an <i>X3DViewpointNode</i> node in the stack, it is removed
from the stack. If it was on the top of the stack,<b><br>
3. if its <i>jump</i> field value is <code>TRUE</code>, the
user's view is instantaneously "jumped" to the <i>position</i>
and <i>orientation</i> of the next <i>X3DViewpointNode</i>
node in the stack <u>with</u> the stored relative
transformation of this next <i>X3DViewpointNode</i> node
applied.</b><br>
<br>
So if you were to bind a new VP, then immediately (next timestamp)
unbind it, the relative transform of the original VP node would be
applied as an offset to the the position/orientation indicated in
the node.<br>
<br>
In order to undo a user's wandering from a VP, it would be
necessary to get the offset position & orientation from the VP
node.<br>
<br>
<br>
Leonard Daly<br>
<br>
<br>
<br>
<br>
<br>
</div>
<blockquote type="cite"
cite="mid:CAKdk67tOQzU-4VGFTZdKS+5p_5q7+Rmb5rfCgPfXg_mvq7qcmw@mail.gmail.com">
<div dir="ltr">
<div>The question came up of how to reset the view after some
navigation to the initial position/orientation of the
viewpoint. One could go to another viewpoint and then back but
the idea is to directly reset the current viewpoint.</div>
<div><br>
</div>
<div>Would it work to send true to the set_bind field of the
currently bound viewpoint to reset the view, with
retainUserOffsets false ?</div>
<div><br>
</div>
<div>I could not really find in the spec. what should happen if
an already bound viewpoint's set_bind field receives true. Is
the event just ignored ?</div>
<div><br>
</div>
<div>x3dom has a resetView() function and x_cite has
browser.bindViewpoint(viewpoint), a nonstandard SAI function
which can be used for this purpose. What would be the standard
way to reset a view ?</div>
<div><br>
</div>
<div>Thanks, -Andreas</div>
<div><br>
</div>
<div><br>
</div>
-- <br>
<div class="gmail_signature" data-smartmail="gmail_signature">
<div dir="ltr">
<div>Andreas Plesch<br>
Waltham, MA 02453</div>
</div>
</div>
</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 Past Chair<br>
President, Daly Realism - <i>Creating the Future</i>
</font></div>
</body>
</html>