[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [2551] branches/geodesic_domes/vefm_259 .py: some consequences forgotton from deleting .x etc
Peter K.H. Gragert
pkhgragert at gmail.com
Sun Oct 30 11:56:20 CET 2011
Revision: 2551
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=2551
Author: pkhg
Date: 2011-10-30 10:56:20 +0000 (Sun, 30 Oct 2011)
Log Message:
-----------
some consequences forgotton from deleting .x etc
Modified Paths:
--------------
branches/geodesic_domes/vefm_259.py
Modified: branches/geodesic_domes/vefm_259.py
===================================================================
--- branches/geodesic_domes/vefm_259.py 2011-10-30 09:54:35 UTC (rev 2550)
+++ branches/geodesic_domes/vefm_259.py 2011-10-30 10:56:20 UTC (rev 2551)
@@ -15,6 +15,25 @@
from mathutils import Vector
from collections import Counter
+def makeMaterial(name, diffuse, specular, alpha):
+# print("=====dbg material name = ", name,diffuse)
+ mat = bpy.data.materials.new(name)
+ mat.diffuse_color = diffuse
+ mat.diffuse_shader = 'LAMBERT'
+ mat.diffuse_intensity = 1.0
+ mat.specular_color = specular
+ mat.specular_shader = 'COOKTORR'
+ mat.specular_intensity = 0.5
+ mat.alpha = alpha
+ mat.ambient = 1
+ return mat
+
+pkhg_red_color = makeMaterial("pkhg_red",(1,0,0),(.5,.5,.5),1)
+
+def setMaterial(ob, mat):
+ me = ob.data
+ me.materials.append(mat)
+
def find_twice_vert(l1,l2):
tmp = [el for el in l1]
tmp.extend(l2)
@@ -34,8 +53,8 @@
# useful for development when the mesh may be invalid.
m.validate(verbose = True)
add_object_data(bpy.context, m, operator = None)
+#???ERROR PKHG in AddSelf setMaterial(bpy.context.active_object,pkhg_red_color)
-
#extra test phase
@@ -45,6 +64,7 @@
def __init__(self,vec=(0,0,0)): #x = 0,y = 0,z = 0):
self.vector = Vector(vec)
+#PKHG test 20111030
# self.x = vec[0]
# self.y = vec[1]
# self.z = vec[2]
@@ -63,9 +83,9 @@
if self.length > 0:
tmp = 1.0/self.length
self.vector = tmp * self.vector
- self.x = self.vector[0] #(1.0/self.length)
- self.y = self.vector[1] #(1.0/self.length)
- self.z = self.vector[2] #(1.0/self.length)
+# self.x = self.vector[0] #(1.0/self.length)
+# self.y = self.vector[1] #(1.0/self.length)
+# self.z = self.vector[2] #(1.0/self.length)
self.length = 1.0
def findnormal(self):
@@ -138,7 +158,8 @@
return (tmp)
def negative(self):
- return vertex((-self.x,-self.y,-self.z))
+# return vertex((-self.x,-self.y,-self.z))
+ return vertex(-self.vector)
class crossp:
## Takes in two vertices(vectors), returns the cross product.
@@ -236,9 +257,10 @@
if v1.length == 0 or v2.length == 0:
print("\nPKHG warning, =========== at least one zero vector 0.0 used")
return 0.0
- dot=(v1.x*v2.x)+(v1.y*v2.y)+(v1.z*v2.z)
+# dot=(v1.x*v2.x)+(v1.y*v2.y)+(v1.z*v2.z)
+ dot = v1.vector.dot(v2.vector)
costheta = dot/(v1.length*v2.length)
- pkhgtmp = v1.vector.dot(v2.vector)
+# pkhgtmp = v1.vector.dot(v2.vector)
tmp = acos(costheta)
return tmp
@@ -367,13 +389,17 @@
right = corner[1]
left = corner[2]
if right.a is vert:
- one = vertex((right.vect.x,right.vect.y,right.vect.z))
+# one = vertex((right.vect.x,right.vect.y,right.vect.z))
+ one = vertex(right.vect.vector)
elif right.b is vert:
- one = vertex((right.vectb.x,right.vectb.y,right.vectb.z))
+# one = vertex((right.vectb.x,right.vectb.y,right.vectb.z))
+ one = vertex(right.vectb.vector)
if left.a is vert:
- two = vertex((left.vect.x,left.vect.y,left.vect.z))
+# two = vertex((left.vect.x,left.vect.y,left.vect.z))
+ two = vertex(left.vect.vetor)
elif left.b is vert:
- two = vertex((left.vectb.x,left.vectb.y,left.vectb.z))
+# two = vertex((left.vectb.x,left.vectb.y,left.vectb.z))
+ two = vertex(left.vectb.vector)
one.normalize()
two.normalize()
@@ -815,7 +841,8 @@
else:
line=[]
for point in candidate.vertices:
- newvert = vertex(point.x,point.y,point.z)
+# newvert = vertex(point.x,point.y,point.z)
+ newvert = vertex(point.vector)
self.verts.append(newvert)
line.append(newvert)
grid.append(line)
@@ -1000,10 +1027,14 @@
maxx = 0
minx = 0
for vert in template.verts:
- if vert.x>maxx:
- maxx = vert.x
- if vert.x<minx:
- minx = vert.x
+# if vert.x>maxx:
+ if vert.vector.x > maxx:
+# maxx = vert.x
+ maxx = vert.vector.x
+# if vert.x<minx:
+ if vert.vector.x < minx:
+# minx = vert.x
+ minx = vert.vector.x
for edj in base.edges:
start = len(self.verts)
centre = average([edj.a,edj.b]).centroid()
@@ -1012,17 +1043,26 @@
diffplus = split-maxx
diffminus=-split-minx
for point in template.verts:
- ay=(edj.normal*point.z*self.height)+(edj.normal*lift)
- ce = edj.cross*point.y*self.width
+# ay=(edj.normal*point.z*self.height)+(edj.normal*lift)
+ ay=(edj.normal * point.vectorz * self.height) + (edj.normal * lift)
+# ce = edj.cross * point.y * self.width
+ ce = edj.cross * point.vector.y * self.width
if stretchflag:
- be = edj.unit*self.shrink*dubbl*point.x
+# be = edj.unit*self.shrink*dubbl*point.x
+ be = edj.unit * self.shrink * dubbl * point.vector.x
else:
- if point.x > 0.0:
- be = edj.unit*self.shrink*(point.x+diffplus)
- elif point.x < 0.0:
- be = edj.unit*self.shrink*(point.x+diffminus)
- elif point.x == 0.0:
- be = edj.unit*self.shrink*point.x
+# if point.x > 0.0:
+ if point.vector.x > 0.0:
+# be = edj.unit * self.shrink * (point.x + diffplus)
+ be = edj.unit * self.shrink * (point.vector.x + diffplus)
+# elif point.x < 0.0:
+ elif point.vector.x < 0.0:
+# be = edj.unit * self.shrink * (point.x + diffminus)
+ be = edj.unit * self.shrink * (point.vector.x + diffminus)
+# elif point.x == 0.0:
+ elif point.vector.x == 0.0:
+# be = edj.unit * self.shrink * point.x
+ be = edj.unit * self.shrink * point.vector.x
de = ay + be + ce
newvert = centre + de
self.verts.append(newvert)
@@ -1083,9 +1123,12 @@
start = len(self.verts)
centre = apex
for point in template.verts:
- ay = apex.normal*point.z*self.height
- ce = apex.cross*point.y*self.width
- be = apex.unit*point.x*self.shrink
+# ay = apex.normal * point.z * self.height
+ ay = apex.normal * point.vertor.z * self.height
+# ce = apex.cross * point.y * self.width
+ ce = apex.cross * point.vector.y * self.width
+# be = apex.unit * point.x * self.shrink
+ be = apex.unit * point.vector.x * self.shrink
de = ay+be+ce
newvert = centre+de
self.verts.append(newvert)
More information about the Bf-extensions-cvs
mailing list