[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [14760] branches/apricot: merge from trunk

Campbell Barton ideasman42 at gmail.com
Fri May 9 13:10:37 CEST 2008


Revision: 14760
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=14760
Author:   campbellbarton
Date:     2008-05-09 13:10:37 +0200 (Fri, 09 May 2008)

Log Message:
-----------
merge from trunk

Modified Paths:
--------------
    branches/apricot/release/scripts/bpymodules/colladaImEx/collada.py
    branches/apricot/release/scripts/bpymodules/colladaImEx/cstartup.py
    branches/apricot/release/scripts/bpymodules/colladaImEx/cutils.py
    branches/apricot/release/scripts/bpymodules/colladaImEx/translator.py
    branches/apricot/release/scripts/bpymodules/dxfReader.py
    branches/apricot/release/scripts/colladaImport14.py
    branches/apricot/release/scripts/vrml97_export.py
    branches/apricot/source/Makefile
    branches/apricot/source/blender/blenkernel/intern/anim.c
    branches/apricot/source/blender/blenkernel/intern/ipo.c
    branches/apricot/source/blender/blenkernel/intern/mball.c
    branches/apricot/source/blender/include/BDR_editface.h
    branches/apricot/source/blender/include/BIF_interface.h
    branches/apricot/source/blender/makesdna/DNA_scene_types.h
    branches/apricot/source/blender/nodes/intern/CMP_nodes/CMP_hueSatVal.c
    branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_hueSatVal.c
    branches/apricot/source/blender/python/BPY_interface.c
    branches/apricot/source/blender/src/buttons_editing.c
    branches/apricot/source/blender/src/drawimasel.c
    branches/apricot/source/blender/src/drawnla.c
    branches/apricot/source/blender/src/editface.c
    branches/apricot/source/blender/src/editmesh_mods.c
    branches/apricot/source/blender/src/editseq.c
    branches/apricot/source/blender/src/header_seq.c
    branches/apricot/source/blender/src/interface.c
    branches/apricot/source/blender/src/interface_draw.c
    branches/apricot/source/blender/src/parametrizer.c
    branches/apricot/source/blender/src/parametrizer.h
    branches/apricot/source/blender/src/parametrizer_intern.h
    branches/apricot/source/blender/src/sequence.c
    branches/apricot/source/blender/src/space.c
    branches/apricot/source/blender/src/unwrapper.c
    branches/apricot/source/gameengine/GamePlayer/Makefile
    branches/apricot/source/nan_definitions.mk

Modified: branches/apricot/release/scripts/bpymodules/colladaImEx/collada.py
===================================================================
--- branches/apricot/release/scripts/bpymodules/colladaImEx/collada.py	2008-05-09 10:26:49 UTC (rev 14759)
+++ branches/apricot/release/scripts/bpymodules/colladaImEx/collada.py	2008-05-09 11:10:37 UTC (rev 14760)
@@ -4,6 +4,7 @@
 # ***** BEGIN GPL LICENSE BLOCK *****
 #
 # Copyright (C) 2006: Illusoft - colladablender at illusoft.com
+# 2008.05.08 some bugfix for debug mode by migius (AKA Remigiusz Fiedler)
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -32,18 +33,18 @@
 
 # TODO: Collada API: finish DaeDocument
 class DaeDocument(object):
-	
+
 	def __init__(self, debugM = False):
 		global debugMode
 		debugMode = debugM
-		
+
 		self.colladaVersion = '1.4.0'
 		self.version = ''
 		self.xmlns = ''
 		self.asset = DaeAsset()
 		self.extras = []
-		
-		
+
+
 		# create all the libraries
 		self.animationsLibrary = DaeLibrary(DaeSyntax.LIBRARY_ANIMATIONS,DaeAnimation,DaeSyntax.ANIMATION)
 		self.animationClipsLibrary = DaeLibrary(DaeSyntax.LIBRARY_ANIMATION_CLIPS,DaeAnimationClip,DaeSyntax.ANIMATION_CLIP)
@@ -56,38 +57,38 @@
 		self.materialsLibrary = DaeLibrary(DaeSyntax.LIBRARY_MATERIALS,DaeFxMaterial,DaeFxSyntax.MATERIAL)
 		self.nodesLibrary = DaeLibrary(DaeSyntax.LIBRARY_NODES, DaeNode, DaeSyntax.NODE)
 		self.visualScenesLibrary = DaeLibrary(DaeSyntax.LIBRARY_VISUAL_SCENES,DaeVisualScene,DaeSyntax.VISUAL_SCENE)
-		
+
 		# Physics Support
-		self.physicsMaterialsLibrary = DaeLibrary(DaeSyntax.LIBRARY_PHYSICS_MATERIALS, DaePhysicsMaterial, DaePhysicsSyntax.PHYSICS_MATERIAL)		 
-		self.physicsScenesLibrary = DaeLibrary(DaeSyntax.LIBRARY_PHYSICS_SCENES, DaePhysicsScene, DaePhysicsSyntax.PHYSICS_SCENE)		 
-		
+		self.physicsMaterialsLibrary = DaeLibrary(DaeSyntax.LIBRARY_PHYSICS_MATERIALS, DaePhysicsMaterial, DaePhysicsSyntax.PHYSICS_MATERIAL)
+		self.physicsScenesLibrary = DaeLibrary(DaeSyntax.LIBRARY_PHYSICS_SCENES, DaePhysicsScene, DaePhysicsSyntax.PHYSICS_SCENE)
+
 		self.physicsModelsLibrary = DaeLibrary(DaeSyntax.LIBRARY_PHYSICS_MODELS, DaePhysicsModel, DaePhysicsSyntax.PHYSICS_MODEL)
-				
+
 		self.scene = None
 		self.physicsScene = None
-		
+
 	def LoadDocumentFromFile(self, filename):
 		global debugMode
 		# Build DOM tree
 		doc = parse( filename )
-		
+
 		# Get COLLADA element
-		colladaNode = doc.documentElement	 
-				
-		# Get Attributes		
+		colladaNode = doc.documentElement
+
+		# Get Attributes
 		self.version = colladaNode.getAttribute(DaeSyntax.VERSION)
 		if not IsVersionOk(self.version, self.colladaVersion):
 			Debug.Debug('The version of the file (%s) is older then the version supported by this plugin(%s).'%(self.version, self.colladaVersion),'ERROR')
 			doc.unlink()
-			return 
+			return
 		self.xmlns = colladaNode.getAttribute(DaeSyntax.XMLNS)
-		
+
 		# get the assets element
 		self.asset.LoadFromXml(self,xmlUtils.FindElementByTagName(colladaNode,DaeSyntax.ASSET))
-		
+
 		# get the extra elements
 		self.extras = CreateObjectsFromXml(self,colladaNode,DaeSyntax.EXTRA,DaeExtra)
-				
+
 		# parse all the libraries
 		self.imagesLibrary.LoadFromXml(self,xmlUtils.FindElementByTagName(colladaNode,DaeSyntax.LIBRARY_IMAGES))
 		self.animationsLibrary.LoadFromXml(self, xmlUtils.FindElementByTagName(colladaNode,DaeSyntax.LIBRARY_ANIMATIONS))
@@ -100,42 +101,46 @@
 		self.materialsLibrary.LoadFromXml(self,xmlUtils.FindElementByTagName(colladaNode,DaeSyntax.LIBRARY_MATERIALS))
 		self.nodesLibrary.LoadFromXml(self,xmlUtils.FindElementByTagName(colladaNode,DaeSyntax.LIBRARY_NODES))
 		self.visualScenesLibrary.LoadFromXml(self, xmlUtils.FindElementByTagName(colladaNode, DaeSyntax.LIBRARY_VISUAL_SCENES))
-		
+
 		self.physicsMaterialsLibrary.LoadFromXml(self, xmlUtils.FindElementByTagName(colladaNode, DaeSyntax.LIBRARY_PHYSICS_MATERIALS))
 		self.physicsModelsLibrary.LoadFromXml(self, xmlUtils.FindElementByTagName(colladaNode, DaeSyntax.LIBRARY_PHYSICS_MODELS))
 		self.physicsScenesLibrary.LoadFromXml(self, xmlUtils.FindElementByTagName(colladaNode, DaeSyntax.LIBRARY_PHYSICS_SCENES))
-		
+
 		# Get the sceneNodes
 		sceneNodes = colladaNode.getElementsByTagName(DaeSyntax.SCENE)
-		
+
 		# Get the scene
 		sceneNode = xmlUtils.FindElementByTagName(colladaNode, DaeSyntax.SCENE)
 		if sceneNode != None:
 			scene = DaeScene()
 			scene.LoadFromXml(self, sceneNode)
 			self.scene = scene
-			
+
 		doc.unlink()
-		
+
 		if debugMode:
 			Debug.Debug('Directly exporting this DaeDocument...','DEBUG')
-			self.SaveDocumentToFile(filename+'_out.dae')
-			
+			filename0 = filename[:-4]
+			self.SaveDocumentToFile(filename0+'_out.dae')
+
 	def SaveDocumentToFile(self, filename):
 		self.version = '1.4.0'
 		self.xmlns = 'http://www.collada.org/2005/11/COLLADASchema'
 		colladaNode = Element(DaeSyntax.COLLADA)
 		colladaNode.setAttribute(DaeSyntax.VERSION, self.version)
 		colladaNode.setAttribute(DaeSyntax.XMLNS, self.xmlns)
-		
+
 		colladaNode.appendChild(self.asset.SaveToXml(self))
-		
-		# add the labraries
+
+		# add the libraries
+#		print '\ndeb:SaveDocumentToFile self.controllersLibrary=', self.controllersLibrary #------
+#		print '\ndeb:SaveDocumentToFile dir(self)', dir(self) #------
+#		print '\ndeb:SaveDocumentToFile self.effectsLibrary=', self.effectsLibrary #------
 		AppendChild(self,colladaNode,self.animationsLibrary)
 		AppendChild(self,colladaNode,self.animationClipsLibrary)
 		AppendChild(self,colladaNode,self.camerasLibrary)
 		AppendChild(self,colladaNode,self.controllersLibrary)
-		AppendChild(self,colladaNode,self.effectsLibrary)		
+		AppendChild(self,colladaNode,self.effectsLibrary)
 		AppendChild(self,colladaNode,self.imagesLibrary)
 		AppendChild(self,colladaNode,self.lightsLibrary)
 		AppendChild(self,colladaNode,self.materialsLibrary)
@@ -144,17 +149,17 @@
 		AppendChild(self,colladaNode,self.visualScenesLibrary)
 		AppendChild(self,colladaNode,self.physicsMaterialsLibrary)
 		AppendChild(self,colladaNode,self.physicsModelsLibrary)
-		AppendChild(self,colladaNode,self.physicsScenesLibrary) 	   
-		
+		AppendChild(self,colladaNode,self.physicsScenesLibrary)
+
 		AppendChild(self,colladaNode,self.scene)
-		
+
 		# write xml to the file
 		fileref = open(filename, 'w')
 		fileref.write(xmlUtils.ToXml(colladaNode))
 		fileref.flush()
 		fileref.close()
 		colladaNode.unlink()
-	
+
 	def GetItemCount(self):
 		return (##self.animationClipsLibrary.GetItemCount()+
 	##self.animationsLibrary.GetItemCount()+
@@ -167,46 +172,46 @@
 	self.nodesLibrary.GetItemCount()##+
 	##self.visualScenesLibrary.GetItemCount()
 	)
-	
+
 	def __str__(self):
 		return '%s version: %s, xmlns: %s, asset: %s, extras: %s, scene: %s'%(type(self), self.version, self.xmlns, self.asset, self.extras, self.scene)
-		
+
 class DaeEntity(object):
 	def __init__(self):
 		self.syntax = 'UNKNOWN'
-		
+
 	def LoadFromXml(self, daeDocument, xmlNode):
 		Debug.Debug('DaeEntity: Override this method for %s'%(type(self)),'WARNING')
-	
+
 	def SaveToXml(self, daeDocument):
 		node = Element(self.syntax)
 		return node
-	
+
 	def GetType(self):
 		return self.syntax
-		
+
 class DaeElement(DaeEntity):
-	
+
 	def __init__(self):
 		super(DaeElement,self).__init__()
-		
+
 		self.id = ''
 		self.name = ''
-		
-	
+
+
 	def LoadFromXml(self,daeDocument, xmlNode):
 		if xmlNode is None:
 			return
-		
+
 		self.id = xmlNode.getAttribute(DaeSyntax.ID)
 		self.name = xmlNode.getAttribute(DaeSyntax.NAME)
-	
+
 	def SaveToXml(self, daeDocument):
 		node = super(DaeElement,self).SaveToXml(daeDocument)
 		SetAttribute(node,DaeSyntax.ID,StripString(self.id))
 		SetAttribute(node,DaeSyntax.NAME, StripString(self.name))
 		return node
-	
+
 	def __str__(self):
 		return super(DaeElement,self).__str__()+'id: %s, name: %s'%(self.id, self.name)
 
@@ -214,25 +219,25 @@
 class DaeLibrary(DaeElement):
 	def __init__(self, syntax, objectType, objectSyntax):
 		super(DaeLibrary,self).__init__()
-		
+
 		self.extras = []
 		self.asset = None
 		self.items = []
-		
+
 		self.__objectSyntax = objectSyntax
-		
+
 		self.syntax = syntax
 		self.__objectType = objectType
-		
+
 	def LoadFromXml(self,daeDocument, xmlNode):
 		if xmlNode is None:
 			return
 		super(DaeLibrary,self).LoadFromXml(daeDocument, xmlNode)
-		
+
 		self.extras = CreateObjectsFromXml(daeDocument, xmlNode, DaeSyntax.EXTRA, DaeExtra)
 		self.asset = CreateObjectFromXml(daeDocument, xmlNode, DaeSyntax.ASSET, DaeAsset)
 		self.items =  CreateObjectsFromXml(daeDocument, xmlNode, self.__objectSyntax, self.__objectType)
-		
+
 	def SaveToXml(self,daeDocument):
 		if len(self.items) > 0:
 			node = super(DaeLibrary,self).SaveToXml(daeDocument)
@@ -247,19 +252,19 @@
 			return None
 	def GetItemCount(self):
 		return len(self.items)
-	
+
 	def FindObject(self,url):
 		for i in self.items:
 			if i.id == url:
 				return i
 		return None
-	
+
 	def AddItem(self,item):
 		self.items.append(item)
-		
+
 	def __str__(self):
 		return super(DaeLibrary,self).__str__() + 'extras: %s, asset: %s, items: %s'%(self.extras, self.asset, self.items)
-		
+
 class DaeAsset(DaeEntity):
 	def __init__(self):
 		super(DaeAsset,self).__init__()
@@ -272,9 +277,9 @@
 		self.keywords = []
 		self.unit = DaeUnit()
 		self.upAxis = 'Y_UP'
-		
+
 		self.syntax = DaeSyntax.ASSET
-		
+
 	def LoadFromXml(self, daeDocument, xmlNode):
 		if xmlNode is None:
 			return
@@ -296,7 +301,7 @@
 		self.unit.LoadFromXml(daeDocument, xmlUtils.FindElementByTagName(xmlNode, DaeSyntax.UNIT))
 		# Get upAxis
 		self.upAxis = xmlUtils.ReadContents(xmlUtils.FindElementByTagName(xmlNode,DaeSyntax.UP_AXIS))
-	
+
 	def SaveToXml(self, daeDocument):
 		node = Element(DaeSyntax.ASSET)
 		AppendChilds(daeDocument,node, self.contributors)
@@ -307,15 +312,15 @@
 		AppendTextChild(node, DaeSyntax.SUBJECT, self.subject)
 		AppendChild(daeDocument, node, self.unit)
 		AppendTextChild(node, DaeSyntax.UP_AXIS, self.upAxis)
-		
-		
-		
+
+
+
 		return node
-		
-	
+
+
 	def __str__(self):
 		return super(DaeAsset,self).__str__()+'contributors: %s, created: %s, modified: %s, revision: %s, title: %s, subject: %s, keywords: %s, unit: %s, upAxis: %s'%(self.contributors, self.created, self.modified, self.revision, self.title, self.subject, self.keywords, self.unit, self.upAxis)
-		
+
 # TODO:  Collada API: finish DaeScene
 class DaeScene(DaeEntity):
 	def __init__(self):
@@ -325,62 +330,62 @@
 		self.iPhysicsScenes = []
 
 		self.syntax = DaeSyntax.SCENE
-		
+

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list