Digital Workshop

Welcome to the Digital Workshop Message Boards
It is currently January 3rd, 2025, 6:18 pm

All times are UTC [ DST ]




Post new topic Reply to topic  [ 61 posts ]  Go to page Previous  1, 2, 3, 4, 5  Next
Author Message
 Post subject:
PostPosted: April 30th, 2008, 12:00 pm 
Offline
Godlike
Godlike

Joined: November 11th, 2004, 1:18 pm
Posts: 1213
Location: New York
Opus: Opus Pro 9.75
OS: Windows 10 Pro 64 bit
System: Core i7, 16G RAM, Nvidia 640GT (desktop), plus Windows 10 and Android tablets
Hi Mack

Thanks for your reply and explanation.

Does this mean that the user can save the drawings that they draw during runtime?

I can't quite get my brain around how this would be done especially using cloned frames.

Can you provide an example?

Kind Regards,

_________________
Stephen


Top
 Profile  
 
 Post subject:
PostPosted: April 30th, 2008, 12:34 pm 
Offline
Godlike
Godlike
User avatar

Joined: March 21st, 2007, 10:44 am
Posts: 3188
Location: UK
Opus: Evolution
Yes, that is what it means. Any information you collect whilst drawing and be stored, saved, reloaded and recreated.

It all has to be coded of course to handle this - but it is possible.

Mack

_________________
When you have explored all avenues of possibilities, what ever remains, how ever improbable, must be the answer.

Interactive Solutions for Business & Education
Learn Anywhere. Learn Anytime.

www.interaktiv.co.uk
+44 (0) 1395 548057


Top
 Profile Visit website  
 
 Post subject:
PostPosted: April 30th, 2008, 12:53 pm 
Offline
Godlike
Godlike

Joined: November 11th, 2004, 1:18 pm
Posts: 1213
Location: New York
Opus: Opus Pro 9.75
OS: Windows 10 Pro 64 bit
System: Core i7, 16G RAM, Nvidia 640GT (desktop), plus Windows 10 and Android tablets
Hi Mack

I tried experimenting with "Ignore Transparent Area" in a drawing frame's properties, and I couldn't get it to draw any more. It draws OK when this property is not ticked. I must be doing something wrong.

Any chance you could post an example on the Forum? :)

It would be a valuable learning item for the v6 drawing features, which seem to have enormous possibilities and could benefit from additional learning material demonstrating some of these.

Kind Regards,

_________________
Stephen


Top
 Profile  
 
 Post subject:
PostPosted: April 30th, 2008, 6:28 pm 
Offline
Godlike
Godlike
User avatar

Joined: March 21st, 2007, 10:44 am
Posts: 3188
Location: UK
Opus: Evolution
Can't remember the solution of the top of my head - but will look at the source for MX360 later and see the best way around this.

Mack

_________________
When you have explored all avenues of possibilities, what ever remains, how ever improbable, must be the answer.

Interactive Solutions for Business & Education
Learn Anywhere. Learn Anytime.

www.interaktiv.co.uk
+44 (0) 1395 548057


Top
 Profile Visit website  
 
 Post subject:
PostPosted: April 30th, 2008, 6:40 pm 
Offline
Godlike
Godlike

Joined: November 11th, 2004, 1:18 pm
Posts: 1213
Location: New York
Opus: Opus Pro 9.75
OS: Windows 10 Pro 64 bit
System: Core i7, 16G RAM, Nvidia 640GT (desktop), plus Windows 10 and Android tablets
Thanks, Mack.

In order to try to "read" the line drawn in a frame, using mouse over, the "Ignore Transparent Area" probably needs to work.

Kind Regards,

_________________
Stephen


Top
 Profile  
 
 Post subject:
PostPosted: April 30th, 2008, 9:26 pm 
Offline
Godlike
Godlike
User avatar

Joined: March 21st, 2007, 10:44 am
Posts: 3188
Location: UK
Opus: Evolution
remembered :-) you don't need an example for this - it's quite simple.

Don't add the action to the frame but a generic opaque object at the bottom of the frames.

Mack

_________________
When you have explored all avenues of possibilities, what ever remains, how ever improbable, must be the answer.

Interactive Solutions for Business & Education
Learn Anywhere. Learn Anytime.

www.interaktiv.co.uk
+44 (0) 1395 548057


Top
 Profile Visit website  
 
 Post subject:
PostPosted: April 30th, 2008, 9:48 pm 
Offline
Godlike
Godlike

Joined: November 11th, 2004, 1:18 pm
Posts: 1213
Location: New York
Opus: Opus Pro 9.75
OS: Windows 10 Pro 64 bit
System: Core i7, 16G RAM, Nvidia 640GT (desktop), plus Windows 10 and Android tablets
Hi Mack

I'm afraid this is not my strong suit: I can't quite figure out what to do.

I added a 1X1 pixel opaque vector to the drawing frame. I'm not sure where to place the mouse over action to "read" (get display data for) the line that would be drawn in this frame. The line itself has no name to reference as an object, so I can't figure out how to add an action to "read" its display characteristics on mouse over using the opaque object.

And, so far, even with the opaque object added, the "Ignore Transparent Area" still causes no line to be drawn in the frame.

Any suggestions would be appreciated.

Kind Regards,

_________________
Stephen


Top
 Profile  
 
 Post subject:
PostPosted: April 30th, 2008, 10:11 pm 
Offline
Godlike
Godlike
User avatar

Joined: March 21st, 2007, 10:44 am
Posts: 3188
Location: UK
Opus: Evolution
:-)

Use the example I previously posted:

The drawing action is on the frame - F1.

Create another opaque frame 'beneath' F1 and take the action from F1 and move this to the new frame.

Change F1 to 'ignore transparent area'.

Now when you draw, the mouse action passes through F1 and the frame beneath catches the action BUT draws in F1.

Mack

_________________
When you have explored all avenues of possibilities, what ever remains, how ever improbable, must be the answer.

Interactive Solutions for Business & Education
Learn Anywhere. Learn Anytime.

www.interaktiv.co.uk
+44 (0) 1395 548057


Top
 Profile Visit website  
 
 Post subject:
PostPosted: April 30th, 2008, 11:36 pm 
Offline
Godlike
Godlike

Joined: November 11th, 2004, 1:18 pm
Posts: 1213
Location: New York
Opus: Opus Pro 9.75
OS: Windows 10 Pro 64 bit
System: Core i7, 16G RAM, Nvidia 640GT (desktop), plus Windows 10 and Android tablets
Hi Mack

Perhaps, we are talking about accomplishing 2 different results. I modified my original .imp (original was attached above), but followed the new design instructions and produced 2 stacked frames. The top had the "Ignore Transparent Area" and the bottom had the drawing scripts. The line drawing, which now takes place in the bottom frame, works fine.

However, the goal is to use mouse over the drawn line and "read" the name and display characteristics (x, y, rotation, length, height, etc.) so that the drawn line can be referenced to delete it (RemovePoints), save it and re-load it (after re-boot, re-clone the frame with this unique line drawn within).

I've simply tested by adding a "hello" text box, hidden on show, which, when the drawn line is 'moused over' would show: can't get this to work.

So, I can't quite see how this can occur.

I'll attach the .imp.

Any suggested changes would be appreciated.

Kind Regards,


You do not have the required permissions to view the files attached to this post.

_________________
Stephen


Top
 Profile  
 
 Post subject:
PostPosted: May 1st, 2008, 4:57 am 
Offline
Godlike
Godlike

Joined: November 12th, 2005, 1:56 am
Posts: 1474
Location: SFBay Area
Opus: OpusPro v9.0x, & Evol.
OS: Vista32
System: Core 2 duo 2Ghz, RAM 3GB, Nvidia Go 7700 - laptop
Stephen

Try this... you may get some insight. Open the Sample Pubs >>> Opus v6 New Features. Play with the Draw Page... as follows.
- add a button
- add a mouseclick action and script
- put this in the script: SketchPad.RemovePoint(4)

Now Preview the Pub, and instead of working with Lines, draw a star with more than say 9 points.

Click the button you made. What I noticed is the Polygon/Star collapses down, and if you click again it will collapse some more (until it is down to ~4 points). Also, Draw two or more stars, and click the button. The "RemovePoint" is only going to change the last Star drawn.

...so I don't know how you would get back to Star1. The same principle applies to lines. So back to Mack's suggestion of one line per frame.

_________________
_good things come to those who wait(0)_


Top
 Profile  
 
 Post subject:
PostPosted: May 1st, 2008, 6:52 am 
Offline
Godlike
Godlike
User avatar

Joined: March 21st, 2007, 10:44 am
Posts: 3188
Location: UK
Opus: Evolution
Lar_123 wrote:
...so I don't know how you would get back to Star1.


I found the same thing with any drawn contour - you can remove the points UNTIL you issue a new draw command and then the index for the frame resets.

I know that each time you use the draw command it would have to be on a new frame but have yet look at whether you can then remove points for each individual frame by tracking the unique index of each frame.

Mack

_________________
When you have explored all avenues of possibilities, what ever remains, how ever improbable, must be the answer.

Interactive Solutions for Business & Education
Learn Anywhere. Learn Anytime.

www.interaktiv.co.uk
+44 (0) 1395 548057


Top
 Profile Visit website  
 
 Post subject:
PostPosted: May 1st, 2008, 6:59 am 
Offline
Godlike
Godlike
User avatar

Joined: March 21st, 2007, 10:44 am
Posts: 3188
Location: UK
Opus: Evolution
Hi Stephen,

You were 99% there :-).

The mouse over action needed to be attached to the frame you want to get information back.

I've modified the IMP and also changed the simple show TB to actually displaying the name of the frame holding the line.

Mack


You do not have the required permissions to view the files attached to this post.

_________________
When you have explored all avenues of possibilities, what ever remains, how ever improbable, must be the answer.

Interactive Solutions for Business & Education
Learn Anywhere. Learn Anytime.

www.interaktiv.co.uk
+44 (0) 1395 548057


Top
 Profile Visit website  
 
 Post subject:
PostPosted: May 1st, 2008, 1:28 pm 
Offline
Godlike
Godlike

Joined: November 11th, 2004, 1:18 pm
Posts: 1213
Location: New York
Opus: Opus Pro 9.75
OS: Windows 10 Pro 64 bit
System: Core i7, 16G RAM, Nvidia 640GT (desktop), plus Windows 10 and Android tablets
Hi

Thanks, Lar_123 and Mack, for your continued help.

I've tried out this drawing model, but unfortunately, it will not work for the multiple lines needing to be drawn. The dilemma is that each stacked frame capable of drawing a single line must be (1) accompanied by a second frame where the actions are placed and (2) since all frames are stacked on top of each other, there is no way to cycle and sequentially draw one line in the first, a second line in the second, etc (multiframes are visually opaque to each other-only one shows at a time-a runtime multi-frame would not show any but the latest line). And, (3), since they are of necessity stacked, drawing on one draws on them all (checking to stop the mouse click passing through or disabling and enabling sequential frames is complex and unsuccessful). So, try as I have, I don't think this is the way to achieve the needed results.

It's too bad there isn't a way to capture the points index positions before they are erased/reset by discontinuous line drawing. Atleast an undo could then remove the last drawn line, followed by the second to last, etc. A bit awkward to erase back through say 20 lines to get to the "incorrect" one needing deletion, but...

Kind Regards,

_________________
Stephen


Top
 Profile  
 
 Post subject:
PostPosted: May 1st, 2008, 9:44 pm 
Offline
Godlike
Godlike

Joined: November 12th, 2005, 1:56 am
Posts: 1474
Location: SFBay Area
Opus: OpusPro v9.0x, & Evol.
OS: Vista32
System: Core 2 duo 2Ghz, RAM 3GB, Nvidia Go 7700 - laptop
Don't use Opus MultiFrame object. You can create a basic frame as master frame and stack 1000 frames in it, each with no background and having "ignore transparency".

There's a feature of clone objects to specify visibility (at least when created). Perhaps make the actual SketchPad Hidden by default(??), and then create the Clone (visible= true).

I have not proved/tried the following, so just thinking: Do all the DrawLine and AddPoint on the clone. For discussion here, let's call that a "drawing_frame". Then it's a matter of keeping track of the clones, and finding a way to 'isolate' the one drawing_frame User wants to edit.

It seems like this would get really 'messy'. You didn't say if you are allowing Free-form drawing or just straight lines. Would this need/application be better served by some other drawing tool?

Quote:
I've thought about the logistics of doing this and can not figure a way, since the many, many frames would need to be stacked, on how a user could get to, for example, the 18th one down, to erase its incorrect line.


If (big 'if') you can track each drawing_frame when created, and present it/name/alias to User in a Listbox with most recent at top. That may handle the selection. One way to 'isolate' User's selection of a 'drawn line/contour' then is to move that selected drawing_frame to Layer(+4) and move a "screening Rectangle" to Layer(+3). That screening Rect. would be a Vector Object... make it ~50% transparent and some neutral tone grey-brown. They use will see the selected line clearly on top of other muted lines... can then confirm 'Delete' (destroy clone). Using something like a Listbox lets the User easily point to one, then another until he sees which is one to change.

Of course you have to manage moving drawing_layer (the clone) back to Layer(0) and hiding or layering the 'screening' Rect back to (-1) etc.

_________________
_good things come to those who wait(0)_


Top
 Profile  
 
 Post subject:
PostPosted: May 1st, 2008, 10:26 pm 
Offline
Godlike
Godlike

Joined: November 11th, 2004, 1:18 pm
Posts: 1213
Location: New York
Opus: Opus Pro 9.75
OS: Windows 10 Pro 64 bit
System: Core i7, 16G RAM, Nvidia 640GT (desktop), plus Windows 10 and Android tablets
Hi Lar_123

Quote:
Don't use Opus MultiFrame object. You can create a basic frame as master frame and stack 1000 frames in it, each with no background and having "ignore transparency".


I've been testing cloning and used a double left click trigger (single left click is part of drawing, right click oddly won't work with this frame) with the following script:
Code:
myInfo = this.GetName()
if (myInfo = "SketchPad")
{this.CloneObject(550,120)
}


Mouse over the edge of the newly cloned frame, and it's name (SketchPad.a string of numbers) appears.

So, I can clone and uniquely name drawing frames.

That's as far as I've gotten.

However, it appears a "messy" road ahead. These cloned frames still have to be stacked on top of each other since they are all needed to draw straight lines on the same diagram canvas. Being stacked, I can't yet figure out how any drawing action on one will not go through to every one below (perhaps, 'don't pass mouse click through will help). Nor can I figure out how the user in runtime will be able to select and delete one incorrect line somewhere in the middle of the stack.

I've looked at countless drawing tools. Would that there was a DLL in the correct managed or unmanaged code (?), with drawing function calls that Opus could access. I've searched endlessly: it seems the world of DLL has given way to ActiveX components, which are not useable in Opus without a shell application (adding command parameters) that would have to be done in VB, for example (there are CAD ActiveX components, pricey).

I have previously played with changing layers, enabling/disabling frames, but with many possible frames needed, this didn't work (atleast, I couldn't get it working smoothly).

Alternately, I have been looking at writing a small executable for the drawing tool in REALbasic: a difficult task for a non-programmer. But full programming languages do have more versatility, and RB in its modern 2008 iteration has good graphics ability. But, since I'm barely able to scipt JS, RB is quite a challenge, as well. Wish me luck!

Kind Regards,

_________________
Stephen


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 61 posts ]  Go to page Previous  1, 2, 3, 4, 5  Next

All times are UTC [ DST ]


Who is online

Users browsing this forum: Google [Bot] and 17 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group