本文整理匯總了Python中direct.gui.DirectLabel.DirectLabel.component方法的典型用法代碼示例。如果您正苦於以下問題:Python DirectLabel.component方法的具體用法?Python DirectLabel.component怎麽用?Python DirectLabel.component使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類direct.gui.DirectLabel.DirectLabel
的用法示例。
在下文中一共展示了DirectLabel.component方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: __init__
# 需要導入模塊: from direct.gui.DirectLabel import DirectLabel [as 別名]
# 或者: from direct.gui.DirectLabel.DirectLabel import component [as 別名]
#.........這裏部分代碼省略.........
self.tubenp.node().addSolid(self.tube)
# The tube should only collide with obstacles (and is an 'into' object)
self.tubenp.node().setFromCollideMask(offMASK)
self.tubenp.node().setIntoCollideMask(obstacleMASK)
# Uncomment this line to show the CollisionTube
#self.tubenp.show()
# CollisionSphere for detecting when we've actuallyt collided with
# something.
self.sphere = CollisionSphere(x,y,z,self.radius)
self.spherenp = self.prime.attachNewNode(CollisionNode('cnode'))
self.spherenp.node().addSolid(self.sphere)
# Only collide with the CollisionSphere's of other vehicles.
self.spherenp.node().setFromCollideMask(obstacleMASK) # So the spheres of vehicles will collide with eachother
self.spherenp.node().setIntoCollideMask(obstacleMASK) # So obstacles will collide into spheres of vehicles
cTrav.addCollider(self.spherenp,collisionHandler)
# Uncomment this line to show the CollisionSphere
#self.spherenp.show()
# Add a task for this Vehicle to the global task manager.
self._prevtime = 0
self.stepTask=taskMgr.add(self._step,"Vehicle step task")
# Add the Vehicle to the global list of Vehicles
vehicles.append(self)
# Initialise the DirectLabel used when annotating the Vehicle
# FIXME: Needs to be destroyed in self.destroy
self.text = "no steering"
self.label = DirectLabel(parent=self.prime,pos=(4,4,4),text=self.text,
text_wordwrap=10,relief=None,
text_scale=(1.5,1.5),text_frame=(0,0,0,1),
text_bg=(1,1,1,1))
self.label.component('text0').textNode.setCardDecal(1)
self.label.setBillboardAxis()
self.label.hide()
self.label.setLightOff(1)
# A second label for speaking ('Ouch!', 'Sorry!' etc.)
self.callout = DirectLabel(parent=self.prime,pos=(4,4,4),text='',
text_wordwrap=10,relief=None,
text_scale=(1.5,1.5),text_frame=(0,0,0,1),
text_bg=(1,1,1,1))
self.callout.component('text0').textNode.setCardDecal(1)
self.callout.setBillboardAxis()
self.callout.hide()
self.callout.setLightOff(1)
def destroy(self):
"""Prepare this Vehicle to be garbage-collected by Python:
Remove all of the Vehicle's nodes from the scene graph, remove its
CollisionSolids from the global CollisionTraverser, clear its
CollisionHandler, remove tasks
After executing this method, any remaining references to the Vehicle
object can be destroyed by the user module, and the Vehicle will be
garbage-collected by Python.
"""
cTrav.removeCollider(self.raynp)
cTrav.removeCollider(self.spherenp)
self.floorhandler.clearColliders()
self.floorhandler = None
self.prime.removeNode()
taskMgr.remove(self.stepTask)