A place for you to start might be to look at
http://www.research.ibm.com/dx/docs/buildingapps/SuperviseState.html
in particular,  "Using the Supervise Tools with a Separate Graphical User
Interface using DXLink and DXCallModule".

I missed the beginning of this discussion, but I can see that you are
using DXLink connecting directly to the user interface to run your
network. This is one way to get the user interactivity which you
desire (and at one time was the only way). An alternative is to
bypass the ui by using the Supervise tools instead of the User
Interface, which is what is described in the document above.
However, you don't need to do this; you should be able to
get the behavior you want using the image tool.

I am a little confused as to why you need to go to any effort at
all to get the image tool to maintain the same view between
iterations. That's what it does naturally, unless you explicitly
ask it to reset the camera.

I looked at (and compiled) your program and there were a couple
things which I think could be done better otherwise. For example,
you have a loop with ExecuteOnce, which won't necessarily allow
each step to be seen, since a bunch of values will just get sent
over one after another.  Instead, I put a DXLExecuteOnChange just
after the starting of DX, and also put in a DXLSetSynchronization to
true so that each SetInput waits for the picture to update before
returning.  You may want to initialize your DXLInput with an
appropriate first value, (it allows you to set a "default" in the visual
program, which is used if nothing's been sent over yet)
since the call to DXLExecuteOnChange
will result in an immediate execution, and you want something
reasonable to be there. You may also want to set an initial
camera (this may in fact be the source of your problems). If the
first execution occurs with just a single point to look it, it's
difficult for dx to come up with a reasonable camera, since the
thing has no depth, height, or width. So it defaults to something
which may or may not make a lot of sense once the rest of your
object is filled in. So you can feed in a "Camera" output to
the Image tool, with at least the "width" parameter set to something
appropriate for the eventual object.

I took out the Get and Set relating to the camera in your
visual program and saw what I think
is the correct behavior: it adds the points one by one, maintaining
the same view; if I rotate or zoom it changes the view and then
leaves it at the new viewpoint.  Although I admit sometimes it can
be hard to get the ui's attention. It may be best to "End Execution"
from the Execute menu, do your manipulation, then go back
into Execute on Change Mode.



_________________________________
Donna L. Gresh
Visual Analysis Group
IBM T.J. Watson Research Center
(914) 784-5049
[EMAIL PROTECTED]

Reply via email to