PDA

View Full Version : "this" variable in simple scripted plugin to extend Point helper


EverZen
10-24-2007, 11:59 AM
Hi all

I am writing a simple plugin that extends the Point helper (see below). The instance of the plugin is going to be created from another script. When an instance of this plugin is created I want it to grab some data from a currently selected object and then position the instance relative to this object. To do this I used the

on create do ()

Event handler. I am using the "this" local variable to set some of the instance parameters (LouvrePos, LouvreDir, LouvreWith, LouvreHeight), which works fine. But if I try and use "this" to access the position or name, I am getting "unknown property" errors. See below :)


plugin helper LouvreControl
name:"LouvreControl"
classID:#(0x727e101b, 0xbf75d18)
extends:Point
replaceUI:true
invisible:true
(


.........

on postcreate do
(
--look at first spline in selection
RefSpline = for o in selection collect o
RefSpline = RefSpline[1]

--Function to extract an array of information from the spline
LouvreStats = ApertureSplinePositioningData RefSpline

--This all works fine
this.LouvrePos = LouvreStats[1]
this.LouvreDir = LouvreStats[2]
this.LouvreWith = LouvreStats[3]
this.LouvreHeight = LouvreStats[4]

--These next lines kick up errors! saying unknown property
this.pos = RefSpline.pos
)

)



Error: Unknown Property pos in LouvreControl

Is there anyway to access name or position (and other) propertes, so I can position etc the instance of the pluggin correctly? Even if I could select it, it woudl do, but "select this" returns an error too.

I am getting the feeling I am doing something very basic wrong, if someone could shed some light on the situation I would be very grateful indeed!

Thanks for your time guys...

Rich

marktsang
10-24-2007, 07:27 PM
this refers to the plugin parameters block not to the actual node.

you could store the object itself in a weak reference in the plugin in a maxobject

you can then refer to it and set the position

mark

ofer_z
10-25-2007, 01:11 AM
Hi,

check out this thread for another way to get the nodes to which the scripted plugin instance is attached:
http://forums.cgsociety.org/showthread.php?f=98&t=511989



hOpe this helps,
o

EverZen
10-26-2007, 09:49 AM
Thanks for your input, that has definitely got me going in the right direction.

Thanks also to Paul Neale for his cool link explaining a bit about weak referencing. It has definitely helped me understand some of these new concepts that I am meeting!

Thanks for your time,

rich

CGTalk Moderation
10-26-2007, 09:49 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.