[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Undefined method error

Greg Frazier

5/30/2009 5:33:00 PM

Hello,

I am encountering the following runtime error:

load('C:\\SketchUp\gfVirtualWMS.rb')
Error: #<NoMethodError: C:/Program Files/Google/Google SketchUp
6/Plugins/gfMakePallet01.rb:59:in `gfMakePallet01': undefined method
`material=' for nil:NilClass>
C:/Program Files/Google/Google SketchUp 6/Plugins/gfMakePallet01.rb:59

The code snippet is as follows:

require 'sketchup'

def gfMakePallet01 (x,y,z,w,l,h,theColor,itemNo,lotNo,qoh,expDate)

model = Sketchup.active_model

value = model.set_attribute "link_data", "url", 115
attrdicts = model.attribute_dictionaries
attrdict = attrdicts["link_data"]
dict_name="link_data"
dicts=model.attribute_dictionaries
if( dicts!= nil and dicts[dict_name] )
dict_key_url = model.get_attribute(dict_name, "url")
else
UI.messagebox("No URL set for this ")
end


materials = model.materials
m = materials.add "Joe"
m2 = materials.add "Fred"
#m.texture="c:\\Program Files\\Google\\Google SketchUp
6\\Materials\\Tile\\Tile_Navy.skm"
#m2.texture="c:\\Program Files\\Google\\Google SketchUp
6\\Materials\\Metal\\Metal_Panel.skm"
color = m.color = theColor
#texture = m.texture
#color = texture.average_color
#if (color)
# UI.messagebox color
#else
# UI.messagebox "Failure"
#end

entities = model.entities

edges = []
model.start_operation "Make Pallet"

# left side plane
pt1 = Geom::Point3d.new(x,y+l,z)
pt2 = Geom::Point3d.new(x,y,z)
pt3 = Geom::Point3d.new(x,y,z+h)
pt4 = Geom::Point3d.new(x,y+l,z+h)
edges[0] = entities.add_line(pt1, pt2)
edges[1] = entities.add_line(pt2, pt3)
edges[2] = entities.add_line(pt3, pt4)
edges[3] = entities.add_line(pt4, pt1)
face = entities.add_face edges
face.material = m

Thank you for your assistance.

Greg
--
Posted via http://www.ruby-....

2 Answers

Robert Klemme

5/31/2009 9:10:00 AM

0

On 30.05.2009 19:33, Greg Frazier wrote:

> I am encountering the following runtime error:
>
> load('C:\\SketchUp\gfVirtualWMS.rb')
> Error: #<NoMethodError: C:/Program Files/Google/Google SketchUp
> 6/Plugins/gfMakePallet01.rb:59:in `gfMakePallet01': undefined method
> `material=' for nil:NilClass>
> C:/Program Files/Google/Google SketchUp 6/Plugins/gfMakePallet01.rb:59
>
> The code snippet is as follows:

> Thank you for your assistance.

And your question was?

Kind regards

robert

--
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestprac...

Greg Frazier

5/31/2009 2:33:00 PM

0

Robert Klemme wrote:
> On 30.05.2009 19:33, Greg Frazier wrote:
>
>> I am encountering the following runtime error:
>>
>> load('C:\\SketchUp\gfVirtualWMS.rb')
>> Error: #<NoMethodError: C:/Program Files/Google/Google SketchUp
>> 6/Plugins/gfMakePallet01.rb:59:in `gfMakePallet01': undefined method
>> `material=' for nil:NilClass>
>> C:/Program Files/Google/Google SketchUp 6/Plugins/gfMakePallet01.rb:59
>>
>> The code snippet is as follows:
>
>> Thank you for your assistance.
>
> And your question was?
>
> Kind regards
>
> robert

Robert. I solved the problem. There was a stray method firing off in
the Plugins window when SketchUp launched. Thank you

Greg
--
Posted via http://www.ruby-....