![]() |
|
#1
|
|||
|
|||
|
Grabbing suparts
http://forum.worldviz.com/showthread...light=subparts This to the follow up of this post. I have used the Grabsubparts example script into my code. After I run the code. I'm getting the following error. The error is uploaded in the image.
Below is the gist from my code. Code:
logoss1 = None
subparts = ['Inst-13015',' Inst-13018', 'Inst-13021', 'Inst-13024',' Inst-12800', 'Inst-12803',' Inst-12806','Inst-11393', 'Inst-11405', 'Inst-11383','Inst-12629 Inst-12619 Inst-12609 Inst-12641 Inst-12631 Inst-12621 Inst-12573 Inst-12599 Inst-12585 Inst-11937 Inst-11931 Inst-11934 Inst-11969 Inst-11972 Inst-11975 Inst-11597 Inst-11594 Inst-11591 Inst-11588 Inst-12261 Inst-12259 Inst-12263 Inst-12265 Inst-12267 Inst-12269 Inst-11960 Inst-11963 Inst-11966 Inst-12277 Inst-12275 Inst-12575 Inst-12587 Inst-12611 Inst-12601 Inst-12694 Inst-12197 Inst-12200 Inst-12692 Inst-12690 Inst-12694 Inst-12696 Inst-12203 Inst-12194']
items = [logoss1]
for subpart in subparts:
node = logoss1.getChild(subpart)
pos = node.getPosition(viz.ABS_GLOBAL)
node.setParent(logoss1)
node.setPosition(pos,viz.ABS_GLOBAL)
items.append(node)
grabber = vizconnect.getToolsWithMode('grabber')
grabber.setItems(items)
Thanks, Mihir Last edited by mihirradia; 02-16-2017 at 12:11 PM. |
|
#2
|
|||
|
|||
|
Where are you adding a model and assigning it to the variable name logoss1? In the code posted it's assigned to None.
|
|
#3
|
|||
|
|||
|
Code:
filePath = vizinput.fileOpen(filter=[('DAE Files','*.dae'),('OSG Files','*.ive;*.osgb;*.osg'),('VRML Files','*.wrl'),('All File','*.*')],directory='3DModels')
logoss1 = None
class ExplosiveModel(viz.VizNode):""" creates a model with a given dae file and gets parts and moves them on specified axes """
global filePath,logoss1,Listchilderen
def __init__(self, rowData):
self.isu = vizfx.addChild(filePath)
logoss1 = self.isu
Listchilderen = logoss1.getNodeNames
viz.VizNode.__init__(self, self.isu.id)
self.scale = .035125 #this scale is determined by doc (dividing model size by .035, we get desired size)
self.isu.setScale([self.scale]*30)
self.current = 0 #index of current
self.rowData = rowData[:]
self.layerParents = []
self.partDict = {}
for tool in vizconnect.getToolsWithMode('Grabber'):
tool.getRaw().setCollisionTester(collision_test.Distance(node=tool.getRaw(), distanceThreshold=1000))
subparts = ['Inst-13015',' Inst-13018', 'Inst-13021', 'Inst-13024',' Inst-12800', 'Inst-12803',' Inst-12806','Inst-11393', 'Inst-11405', 'Inst-11383','Inst-12629 Inst-12619 Inst-12609 Inst-12641 Inst-12631 Inst-12621 Inst-12573 Inst-12599 Inst-12585 Inst-11937 Inst-11931 Inst-11934 Inst-11969 Inst-11972 Inst-11975 Inst-11597 Inst-11594 Inst-11591 Inst-11588 Inst-12261 Inst-12259 Inst-12263 Inst-12265 Inst-12267 Inst-12269 Inst-11960 Inst-11963 Inst-11966 Inst-12277 Inst-12275 Inst-12575 Inst-12587 Inst-12611 Inst-12601 Inst-12694 Inst-12197 Inst-12200 Inst-12692 Inst-12690 Inst-12694 Inst-12696 Inst-12203 Inst-12194']
items = [logoss1]
for subpart in subparts:
node = logoss1.getChild(subpart)
pos = node.getPosition(viz.ABS_GLOBAL)
node.setParent(logoss1)
node.setPosition(pos,viz.ABS_GLOBAL)
items.append(node)
grabber = vizconnect.getToolsWithMode('grabber')
grabber.setItems(items)
Last edited by mihirradia; 02-22-2017 at 09:40 AM. Reason: This How my actual code Is. |
|
#4
|
|||
|
|||
|
This is my actual code.
|
|
#5
|
|||
|
|||
|
For help with code issues please follow the guidelines for posting Vizard code.
|
|
#6
|
|||
|
|||
|
Code:
filePath = vizinput.fileOpen(filter=[('DAE Files','*.dae'),('OSG Files','*.ive;*.osgb;*.osg'),('VRML Files','*.wrl'),('All File','*.*')],directory='3DModels')
logoss1 = None
Listchilderen=[]
GrabedObject=None
ModelsList=[]
ModelsList.append(logoss1)
DissasembeldPart=False
models=None
grabItems=None
class ExplosiveModel(viz.VizNode):
""" creates a model with a given dae file and gets parts and moves them on specified axes """
global filePath,logoss1,Listchilderen
def __init__(self, rowData):
self.isu = vizfx.addChild(filePath)
logoss1 = self.isu
Listchilderen = logoss1.getNodeNames
viz.VizNode.__init__(self, self.isu.id)
self.scale = .035125 #this scale is determined by doc (dividing model size by .035, we get desired size)
self.isu.setScale([self.scale]*30)
self.current = 0 #index of current
self.rowData = rowData[:]
self.layerParents = []
self.partDict = {}
for tool in vizconnect.getToolsWithMode('Grabber'):
tool.getRaw().setCollisionTester(collision_test.Distance(node=tool.getRaw(), distanceThreshold=1000))
subparts = ['Inst-13015',' Inst-13018', 'Inst-13021', 'Inst-13024',' Inst-12800', 'Inst-12803',' Inst-12806','Inst-11393', 'Inst-11405', 'Inst-11383','Inst-12629 Inst-12619 Inst-12609 Inst-12641 Inst-12631 Inst-12621 Inst-12573 Inst-12599 Inst-12585 Inst-11937 Inst-11931 Inst-11934 Inst-11969 Inst-11972 Inst-11975 Inst-11597 Inst-11594 Inst-11591 Inst-11588 Inst-12261 Inst-12259 Inst-12263 Inst-12265 Inst-12267 Inst-12269 Inst-11960 Inst-11963 Inst-11966 Inst-12277 Inst-12275 Inst-12575 Inst-12587 Inst-12611 Inst-12601 Inst-12694 Inst-12197 Inst-12200 Inst-12692 Inst-12690 Inst-12694 Inst-12696 Inst-12203 Inst-12194']
items = [logoss1]
for subpart in subparts:
node = logoss1.getChild(subpart)
pos = node.getPosition(viz.ABS_GLOBAL)
node.setParent(logoss1)
node.setPosition(pos,viz.ABS_GLOBAL)
items.append(node)
grabber = vizconnect.getToolsWithMode('grabber')
grabber.setItems(items)
|
|
#7
|
|||
|
|||
|
I'm sorry for the inconvenience caused.
|
![]() |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Grabbing of an object | mihirradia | Vizard | 1 | 10-31-2016 04:48 PM |
| Grabbing an object | pawan | Vizard | 3 | 07-21-2016 12:22 AM |
| grabbing the object under mouse | dwaik | Vizard | 2 | 03-02-2010 02:46 AM |
| grabbing problems..... | giancamati | Vizard | 5 | 12-15-2006 10:24 AM |