<div dir="ltr"><div class="gmail_default" style="font-size:small">Hi Hilaire,</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Yes much like the interface for autodraw as you draw it selects the most likely template and displays it for you.  </div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">There are still ways to discover properties on an object using hover, highlighting, and snap.  Getting closer to an arrowhead might highlight it, hovering over it would make it bigger, dragging it would extend a line. A slight distance away in the direction of the arrow exposes a rotation indicator that users can use to change the line's angle.  Getting close to a circle might add an arrow from the center to show its radius, getting close to the arrow would highlight it and moving your mouse to the arrowhead would make it bigger and dragging it would extend the radius.  Getting closer to the center would highlight the center point.  Clicking it would establish the point on, clicking it again would turn it off.  </div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">I'm not saying this is a perfectly intuitive interface but you can make it more discoverable by clearly understanding what a user might want to do and understanding how the user might go about trying to add that functionality.  (an arch drawn across two connected lines adds an angle marker).  You could even have a menu of physical items to represent the cursor a ruler, a compass, a protractor that would change what properties are exposed based on what tool is used but still, the properties are more physically exposed directly on the drawing using hover, highlighting, and snap. </div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Having code that always displays and is modified as the user interacts would also be a very useful tool to allow users to identify changes and make adjustments not easily expressed physically.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">All the best,</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Ron Teitelbaum</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 17, 2019 at 6:08 AM Hilaire <<a href="mailto:hilaire@drgeo.eu">hilaire@drgeo.eu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Ron, thanks for your feedbacks<br>
<br>
In 2005, when I ported Dr. Geo from C++ to Squeak, I investigated shapes<br>
gesture recognition with the help of the Genie package. As you wrote,<br>
you can recognize drawn shapes as circle and line, move the canvas in<br>
one or another direction. Gesture was not based on neural network layer,<br>
I don't think it can recognize shapes as shown with autodraw.<br>
<br>
However in the context of Dr. Geo, most of the time you will not<br>
instantiate a circle out of nothing, so it will mean to recognize<br>
additional gestures to designate the center (a free point, a point on a<br>
line, or on two lines) and another point on the circle, or a value as<br>
the radius, or a segment as radius base, etc.<br>
<br>
All perfectly doable, it will require the user to learn the gestures and<br>
to have the ad-hoc pen based interface, though. I found these two<br>
situations not likely to happen: user are mainly casual user (kids at<br>
school) operating with a mouse driven computer. Another issue I found: <br>
the gestures are implicit, the user has no way to discover the gestures<br>
without going through a tutorial. In an iconic UI, you convey explicit<br>
information with tooltips and toolbar messages when the user specifies<br>
he wants to draw a circle. Ok, you can go through this process with<br>
gesture based UI, with a kind of hybrid UI. Anyway I did not go very far<br>
although the idea was appealing.<br>
<br>
Now you wrote about gesture to create code or to retrieve a template<br>
from a corpus; for example drawing a map will retrieve a code template<br>
to create interactive geographic map, drawing a time line will retrieve<br>
a template code to create an interactive temporal/chronological line,<br>
drawing a triangle will retrieve a template code to create an<br>
interactive geometric sketch, drawing a speaker/wave will retrieve a<br>
template code to create a sound recorder/player and so on.<br>
<br>
Was it what you meant?<br>
<br>
Hilaire<br>
<br>
Le 12/01/2019 à 21:27, Ron Teitelbaum a écrit :<br>
> Thanks for the post.  Very interesting reading.  There is a third<br>
> option between dense GUI and code editing.  <br>
><br>
> You mentioned an assistant but I think there is the potential to have<br>
> an advanced agent that builds interactive diagrams based on user<br>
> input.  As an example drawing a large cross builds a<br>
> cartesian coordinate.  Pulling arrows changes the scale, drawing a<br>
> circle creates a circle, pulling the edge scales the circle, drawing a<br>
> line staps to grid.  Adding a Point creates a point. Typing a letter<br>
> labels the point.  <br>
><br>
> Having this interaction create code that can be edited and maybe also<br>
> show similar templates available would also be very useful.  As we get<br>
> better at recognizing user intention [1] using those techniques to<br>
> enhance user computer interaction should enable us to design much<br>
> easier interfaces for teachers.  <br>
><br>
> 1. <a href="https://www.autodraw.com/" rel="noreferrer" target="_blank">https://www.autodraw.com/</a> something like this.  Draw an image and<br>
> select a match from the top to change your image.<br>
><br>
-- <br>
Dr. Geo<br>
<a href="http://drgeo.eu" rel="noreferrer" target="_blank">http://drgeo.eu</a><br>
<br>
<br>
<br>
</blockquote></div>