当前位置: 首页>>代码示例>>Python>>正文


Python Map.invcolor方法代码示例

本文整理汇总了Python中Map.invcolor方法的典型用法代码示例。如果您正苦于以下问题:Python Map.invcolor方法的具体用法?Python Map.invcolor怎么用?Python Map.invcolor使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Map的用法示例。


在下文中一共展示了Map.invcolor方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: build_constelation

# 需要导入模块: import Map [as 别名]
# 或者: from Map import invcolor [as 别名]
	def build_constelation(self,mol):
		if mol.acteur == None :
			MB.showwarning('Info','Select a molecule in the list')
			return
		if mol.symobs !=None:
			mol.acteur.RemoveObserver(mol.symobs)
		if mol.lsm!=[]:
			for sm in mol.lsm:
				self.gfx.renderer.RemoveActor(sm)
			mol.lsm=[]
		(xmin, xmax, ymin, ymax, zmin, zmax)= self.bounds
		sym=open(self.symlistfile,'r')
		for l in sym:
			ms = l.split()
			nbl = int(ms[6][1:])
			if nbl not in mol.lnbsm:
				continue
			ang = [float(ms[0]),float(ms[1]),float(ms[2])]
			tra = array([float(ms[3]),float(ms[4]),float(ms[5])])
			sm=symmate() #on cree un symmate vide
			sm.SetPosition(mol.acteur.GetPosition()) #on assigne la partie translationelle des pv
			sm.SetOrientation(mol.acteur.GetOrientation()) #on assigne la partie rotationelle des pv
			self.RotaEuler(sm.ut,ang[0],ang[1],ang[2]) #on defini la partie rotationelle de la transformation
			sm.ut.Translate(tra[0],tra[1],tra[2]) #on defini la partie translationelle de la transformation
			sm.SetUserTransform(sm.ut) #on assigne la transformation a notre symmate
			pip = [sm.GetMatrix().GetElement(0,3),sm.GetMatrix().GetElement(1,3),sm.GetMatrix().GetElement(2,3)]#on recupere la partie translationelle de la combinaison de pv et de la transformation (ut)
			if (xmin + self.mdbe < pip[0]) and (pip[0] < xmax - self.mdbe) and (ymin + self.mdbe < pip[1]) and (pip[1] < ymax - self.mdbe) and (zmin + self.mdbe < pip[2]) and (pip[2] < zmax - self.mdbe):# on test si pip est dans la boite
				sm.nbsym=nbl
				if mol.acteur.GetClassName()=='vtkAssembly':# dans le cas ou la molecule independante est un assembly
					for i in range(mol.acteur.GetNumberOfPaths()):
						tmp=vtk.vtkActor()
						tmp.SetMapper(mol.acteur.GetParts().GetItemAsObject(i).GetMapper())
						p=vtk.vtkProperty()
						#p.SetColor(mol.acteur.GetParts().GetItemAsObject(i).GetProperty().GetColor())
						p.SetColor(Map.invcolor(mol.acteur.GetParts().GetItemAsObject(i).GetProperty().GetColor()))
						tmp.SetProperty(p)
						if mol.mod.type=='mol':
							tmp.GetProperty().SetLineWidth(4)
						tmp.DragableOff()
						tmp.PickableOff()
						sm.AddPart(tmp)
				else:#cas simple ou la mol ind est composer d un seul objet
					tmp=vtk.vtkActor()
					tmp.SetMapper(mol.acteur.GetMapper())
					p=vtk.vtkProperty()
					#p.SetColor(mol.acteur.GetParts().GetItemAsObject(i).GetProperty().GetColor())
					p.SetColor(Map.invcolor(mol.acteur.GetProperty().GetColor()))
					tmp.SetProperty(p)
					if mol.mod.type=='mol':
							tmp.GetProperty().SetLineWidth(4)
					tmp.DragableOff()
					tmp.PickableOff()
					sm.AddPart(tmp)
				mol.lsm+=[sm]# on ajoute le symmate a la liste des symmate
		sym.close()
		self.move_sym(mol)
开发者ID:ggoret,项目名称:VEDA,代码行数:58,代码来源:sym.py

示例2: display_mol

# 需要导入模块: import Map [as 别名]
# 或者: from Map import invcolor [as 别名]
def display_mol(gfx,mollist,butcolor):
	if mollist.curselection()==():
		MB.showwarning('Info','Select a molecule in the list')
		return
	for molit in mollist.curselection():
			for mol in gfx.mol:
				if mollist.get(molit)==mol.un:
					mol.col=tkhex2vtk_color(butcolor.cget('bg'))
					if mol.acteur.GetClassName()=='vtkAssembly':
						for i in range(mol.acteur.GetNumberOfPaths()):
							mol.acteur.GetParts().GetItemAsObject(i).GetProperty().SetColor(mol.col)
					else:
						mol.acteur.GetProperty().SetColor(mol.col)
					for sm in mol.lsm:
						if sm.GetClassName()=='vtkAssembly':
							for i in range(sm.GetNumberOfPaths()):
								sm.GetParts().GetItemAsObject(i).GetProperty().SetColor(Map.invcolor(mol.col))
					gfx.itf.mollist.itemconfigure(tk.END,background='black',foreground=vtk2tkhex_color(mol.col),selectbackground=vtk2tkhex_color(mol.col),selectforeground='white')
					mollist.itemconfigure(molit,background=butcolor.cget('bg'))
					gfx.renwin.Render()
开发者ID:ggoret,项目名称:VEDA,代码行数:22,代码来源:mod.py


注:本文中的Map.invcolor方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。