b4 taking 4 reference points instead of just 2
This commit is contained in:
+6
-4
@@ -55,15 +55,17 @@ def createMeshFromData(name, origin, verts, faces):
|
|||||||
me = bpy.data.meshes.new(name+'Mesh')
|
me = bpy.data.meshes.new(name+'Mesh')
|
||||||
ob = bpy.data.objects.new(name, me)
|
ob = bpy.data.objects.new(name, me)
|
||||||
ob.location = origin
|
ob.location = origin
|
||||||
|
ob.scale = (8,8,8)
|
||||||
|
|
||||||
# Link object to scene and make active
|
# Link object to scene and make active
|
||||||
scn = bpy.context.scene
|
scn = bpy.context.scene
|
||||||
scn.objects.link(ob)
|
scn.objects.link(ob)
|
||||||
scn.objects.active = ob
|
scn.objects.active = ob
|
||||||
ob.select = True
|
ob.select = False
|
||||||
|
|
||||||
# Create mesh from given verts, faces.
|
# Create mesh from given verts, faces.
|
||||||
me.from_pydata(verts, [], faces)
|
me.from_pydata(verts, [], faces)
|
||||||
|
|
||||||
# Update mesh with new data
|
# Update mesh with new data
|
||||||
me.update()
|
me.update()
|
||||||
|
|
||||||
@@ -75,7 +77,7 @@ def subdivide(verts, faces, iteration):
|
|||||||
def vecLen(vec):
|
def vecLen(vec):
|
||||||
return sum([c**2 for c in vec])**.5
|
return sum([c**2 for c in vec])**.5
|
||||||
|
|
||||||
def expandVecToLen(vec, desiredLength):
|
def scaleVecToLen(vec, desiredLength):
|
||||||
vecLen_now = vecLen(vec)
|
vecLen_now = vecLen(vec)
|
||||||
return (
|
return (
|
||||||
vec[0] * desiredLength / vecLen_now,
|
vec[0] * desiredLength / vecLen_now,
|
||||||
@@ -87,9 +89,9 @@ def subdivide(verts, faces, iteration):
|
|||||||
vecLen_p1 = vecLen(verts[p1])
|
vecLen_p1 = vecLen(verts[p1])
|
||||||
vecLen_p2 = vecLen(verts[p2])
|
vecLen_p2 = vecLen(verts[p2])
|
||||||
vecLen_new = (vecLen_p1 + vecLen_p2)*.5
|
vecLen_new = (vecLen_p1 + vecLen_p2)*.5
|
||||||
heightDelta = random.gauss(0,.03*(.6**iteration))
|
heightDelta = random.gauss(0,.01*(.6**iteration))
|
||||||
|
|
||||||
return expandVecToLen ((
|
return scaleVecToLen ((
|
||||||
(verts[p1][0] + verts[p2][0]) * .5,
|
(verts[p1][0] + verts[p2][0]) * .5,
|
||||||
(verts[p1][1] + verts[p2][1]) * .5,
|
(verts[p1][1] + verts[p2][1]) * .5,
|
||||||
(verts[p1][2] + verts[p2][2]) * .5
|
(verts[p1][2] + verts[p2][2]) * .5
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user