[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [14944] branches/soc-2008-unclezeiv: svn merge -r 14901:14943 https://svn.blender.org/svnroot/bf-blender/trunk/ blender
Davide Vercelli
davide.vercelli at gmail.com
Fri May 23 19:28:08 CEST 2008
Revision: 14944
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=14944
Author: unclezeiv
Date: 2008-05-23 19:28:06 +0200 (Fri, 23 May 2008)
Log Message:
-----------
svn merge -r 14901:14943 https://svn.blender.org/svnroot/bf-blender/trunk/blender
Modified Paths:
--------------
branches/soc-2008-unclezeiv/release/scripts/uvcalc_lightmap.py
branches/soc-2008-unclezeiv/source/blender/blenkernel/intern/anim.c
branches/soc-2008-unclezeiv/source/blender/blenkernel/intern/blender.c
branches/soc-2008-unclezeiv/source/blender/blenkernel/intern/displist.c
branches/soc-2008-unclezeiv/source/blender/blenkernel/intern/modifier.c
branches/soc-2008-unclezeiv/source/blender/blenkernel/intern/particle.c
branches/soc-2008-unclezeiv/source/blender/blenkernel/intern/softbody.c
branches/soc-2008-unclezeiv/source/blender/blenloader/intern/readfile.c
branches/soc-2008-unclezeiv/source/blender/makesdna/DNA_object_types.h
branches/soc-2008-unclezeiv/source/blender/nodes/intern/CMP_nodes/CMP_gamma.c
branches/soc-2008-unclezeiv/source/blender/nodes/intern/SHD_nodes/SHD_dynamic.c
branches/soc-2008-unclezeiv/source/blender/python/api2_2x/NLA.c
branches/soc-2008-unclezeiv/source/blender/python/api2_2x/Window.c
branches/soc-2008-unclezeiv/source/blender/python/api2_2x/doc/NLA.py
branches/soc-2008-unclezeiv/source/blender/python/api2_2x/sceneRender.c
branches/soc-2008-unclezeiv/source/blender/render/intern/source/envmap.c
branches/soc-2008-unclezeiv/source/blender/render/intern/source/texture.c
branches/soc-2008-unclezeiv/source/blender/src/buttons_object.c
branches/soc-2008-unclezeiv/source/blender/src/buttons_scene.c
branches/soc-2008-unclezeiv/source/blender/src/drawarmature.c
branches/soc-2008-unclezeiv/source/blender/src/drawobject.c
branches/soc-2008-unclezeiv/source/blender/src/editaction.c
branches/soc-2008-unclezeiv/source/blender/src/editarmature.c
branches/soc-2008-unclezeiv/source/blender/src/editconstraint.c
branches/soc-2008-unclezeiv/source/blender/src/editseq.c
branches/soc-2008-unclezeiv/source/blender/src/header_image.c
branches/soc-2008-unclezeiv/source/blender/src/sequence.c
branches/soc-2008-unclezeiv/source/blender/src/space.c
branches/soc-2008-unclezeiv/source/blender/src/transform.c
branches/soc-2008-unclezeiv/source/blender/src/transform_conversions.c
branches/soc-2008-unclezeiv/source/blender/src/transform_orientations.c
Added Paths:
-----------
branches/soc-2008-unclezeiv/source/gameengine/PyDoc/epy_docgen.sh
Removed Paths:
-------------
branches/soc-2008-unclezeiv/release/scripts/bpymodules/dxfImportObjects.py
branches/soc-2008-unclezeiv/source/gameengine/PyDoc/Makefile
Deleted: branches/soc-2008-unclezeiv/release/scripts/bpymodules/dxfImportObjects.py
===================================================================
--- branches/soc-2008-unclezeiv/release/scripts/bpymodules/dxfImportObjects.py 2008-05-23 17:19:45 UTC (rev 14943)
+++ branches/soc-2008-unclezeiv/release/scripts/bpymodules/dxfImportObjects.py 2008-05-23 17:28:06 UTC (rev 14944)
@@ -1,1326 +0,0 @@
-"""This module provides wrapper objects for dxf entities.
-
- The wrappers expect a "dxf object" as input. The dxf object is
- an object with a type and a data attribute. Type is a lowercase
- string matching the 0 code of a dxf entity. Data is a list containing
- dxf objects or lists of [code, data] pairs.
-
- This module is not general, and is only for dxf import.
-"""
-
-# --------------------------------------------------------------------------
-# DXF Import Objects v0.8 by Ed Blake (AKA Kitsu)
-# --------------------------------------------------------------------------
-# ***** BEGIN GPL LICENSE BLOCK *****
-#
-# 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 the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software Foundation,
-# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# ***** END GPL LICENCE BLOCK *****
-# --------------------------------------------------------------------------
-from math import *
-
-
-# from Stani's dxf writer v1.1 (c)www.stani.be (GPL)
-#---color values
-BYBLOCK=0
-BYLAYER=256
-
-#---block-type flags (bit coded values, may be combined):
-ANONYMOUS =1 # This is an anonymous block generated by hatching, associative dimensioning, other internal operations, or an application
-NON_CONSTANT_ATTRIBUTES =2 # This block has non-constant attribute definitions (this bit is not set if the block has any attribute definitions that are constant, or has no attribute definitions at all)
-XREF =4 # This block is an external reference (xref)
-XREF_OVERLAY =8 # This block is an xref overlay
-EXTERNAL =16 # This block is externally dependent
-RESOLVED =32 # This is a resolved external reference, or dependent of an external reference (ignored on input)
-REFERENCED =64 # This definition is a referenced external reference (ignored on input)
-
-#---mtext flags
-#attachment point
-TOP_LEFT = 1
-TOP_CENTER = 2
-TOP_RIGHT = 3
-MIDDLE_LEFT = 4
-MIDDLE_CENTER = 5
-MIDDLE_RIGHT = 6
-BOTTOM_LEFT = 7
-BOTTOM_CENTER = 8
-BOTTOM_RIGHT = 9
-#drawing direction
-LEFT_RIGHT = 1
-TOP_BOTTOM = 3
-BY_STYLE = 5 #the flow direction is inherited from the associated text style
-#line spacing style (optional):
-AT_LEAST = 1 #taller characters will override
-EXACT = 2 #taller characters will not override
-
-#---polyline flags
-CLOSED =1 # This is a closed polyline (or a polygon mesh closed in the M direction)
-CURVE_FIT =2 # Curve-fit vertices have been added
-SPLINE_FIT =4 # Spline-fit vertices have been added
-POLYLINE_3D =8 # This is a 3D polyline
-POLYGON_MESH =16 # This is a 3D polygon mesh
-CLOSED_N =32 # The polygon mesh is closed in the N direction
-POLYFACE_MESH =64 # The polyline is a polyface mesh
-CONTINOUS_LINETYPE_PATTERN =128 # The linetype pattern is generated continuously around the vertices of this polyline
-
-#---text flags
-#horizontal
-LEFT = 0
-CENTER = 1
-RIGHT = 2
-ALIGNED = 3 #if vertical alignment = 0
-MIDDLE = 4 #if vertical alignment = 0
-FIT = 5 #if vertical alignment = 0
-#vertical
-BASELINE = 0
-BOTTOM = 1
-MIDDLE = 2
-TOP = 3
-class Object:
- """Empty container class for dxf objects"""
-
- def __init__(self, _type=''):
- """_type expects a string value."""
- self.type = _type
- self.name = ''
- self.data = []
-
- def __str__(self):
- if self.name:
- return self.name
- else:
- return self.type
-
- def __repr__(self):
- return str(self.data)
-
- def get_type(self, kind=''):
- """Despite the name, this method actually returns all objects of type 'kind' from self.data."""
- if type:
- objects = []
- for item in self.data:
- if type(item) != list and item.type == kind:
- # we want this type of object
- objects.append(item)
- elif type(item) == list and item[0] == kind:
- # we want this type of data
- objects.append(item[1])
- return objects
-
-
-class Layer:
- """Class for objects representing dxf layers."""
-
- def __init__(self, obj):
- """Expects an entity object of type line as input."""
- self.type = obj.type
- self.data = obj.data[:]
-
- self.name = obj.get_type(2)[0]
- self.color = obj.get_type(62)[0]
- self.flags = obj.get_type(70)[0]
- self.frozen = self.flags&1
-
-
-
- def __repr__(self):
- return "%s: name - %s, color - %s" %(self.__class__.__name__, self.name, self.color)
-
-
-
-class Line:
- """Class for objects representing dxf lines."""
-
- def __init__(self, obj):
- """Expects an entity object of type line as input."""
- if not obj.type == 'line':
- raise TypeError, "Wrong type %s for line object!" %obj.type
- self.type = obj.type
- self.data = obj.data[:]
-
- self.space = obj.get_type(67)
- if self.space:
- self.space = self.space[0]
- else:
- self.space = 0
-
- self.color_index = obj.get_type(62)
- if self.color_index:
- self.color_index = self.color_index[0]
- else:
- self.color_index = BYLAYER
-
- discard, self.layer, discard_index = get_layer(obj.data)
- del obj.data[discard_index]
-
- self.points = self.get_points(obj.data)
-
-
-
-
- def get_points(self, data):
- """Gets start and end points for a line type object.
-
- Lines have a fixed number of points (two) and fixed codes for each value.
- """
-
- # start x, y, z and end x, y, z = 0
- sx, sy, sz, ex, ey, ez = 0, 0, 0, 0, 0, 0
- for item in data:
- if item[0] == 10: # 10 = x
- sx = item[1]
- elif item[0] == 20: # 20 = y
- sy = item[1]
- elif item[0] == 30: # 30 = z
- sz = item[1]
- elif item[0] == 11: # 11 = x
- ex = item[1]
- elif item[0] == 21: # 21 = y
- ey = item[1]
- elif item[0] == 31: # 31 = z
- ez = item[1]
- return [[sx, sy, sz], [ex, ey, ez]]
-
-
-
- def __repr__(self):
- return "%s: layer - %s, points - %s" %(self.__class__.__name__, self.layer, self.points)
-
-
-
-class LWpolyline:
- """Class for objects representing dxf LWpolylines."""
-
- def __init__(self, obj):
- """Expects an entity object of type lwpolyline as input."""
- if not obj.type == 'lwpolyline':
- raise TypeError, "Wrong type %s for polyline object!" %obj.type
- self.type = obj.type
- self.data = obj.data[:]
-
- # required data
- self.num_points = obj.get_type(90)[0]
-
- # optional data (with defaults)
- self.space = obj.get_type(67)
- if self.space:
- self.space = self.space[0]
- else:
- self.space = 0
-
- self.color_index = obj.get_type(62)
- if self.color_index:
- self.color_index = self.color_index[0]
- else:
- self.color_index = BYLAYER
-
- self.elevation = obj.get_type(38)
- if self.elevation:
- self.elevation = self.elevation[0]
- else:
- self.elevation = 0
-
- self.flags = obj.get_type(70)
- if self.flags:
- self.flags = self.flags[0]
- else:
- self.flags = 0
-
- self.closed = self.flags&1 # byte coded, 1 = closed, 128 = plinegen
- discard, self.layer, discard_index = get_layer(obj.data)
- del obj.data[discard_index]
- self.points = self.get_points(obj.data)
- self.extrusion = self.get_extrusion(obj.data)
-
-
-
-
-
-
- def get_points(self, data):
- """Gets points for a polyline type object.
-
- Polylines have no fixed number of verts, and
- each vert can have a number of properties.
- Verts should be coded as
- 10:xvalue
- 20:yvalue
- 40:startwidth or 0
- 41:endwidth or 0
- 42:bulge or 0
- for each vert
- """
- num = self.num_points
- point = None
- points = []
- for item in data:
- if item[0] == 10: # 10 = x
- if point:
- points.append(point)
- point = Vertex()
- point.x = item[1]
- elif item[0] == 20: # 20 = y
- point.y = item[1]
- elif item[0] == 40: # 40 = start width
- point.swidth = item[1]
- elif item[0] == 41: # 41 = end width
- point.ewidth = item[1]
- elif item[0] == 42: # 42 = bulge
- point.bulge = item[1]
- points.append(point)
- return points
-
-
- def get_extrusion(self, data):
- """Find the axis of extrusion.
-
- Used to get the objects Object Coordinate System (ocs).
- """
- vec = [0,0,1]
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list