Merge branch 'master' into blender2.8

This commit is contained in:
Campbell Barton 2018-09-08 06:18:54 +10:00
commit 4c132dc503
108 changed files with 257 additions and 312 deletions

View File

@ -1 +1 @@
{'handleType': '0', 'rotate': (99.5, 137.5, 137.5, 137.5), 'baseSize_s': 0.1600000560283661, 'af2': 1.0, 'pruneRatio': 0.75, 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'pruneWidthPeak': 0.5, 'boneStep': (1, 1, 1, 1), 'nrings': 0, 'leafScale': 0.4000000059604645, 'makeMesh': False, 'baseSize': 0.30000001192092896, 'lengthV': (0.0, 0.10000000149011612, 0.0, 0.0), 'shapeS': '10', 'pruneBase': 0.11999999731779099, 'af3': 4.0, 'loopFrames': 0, 'horzLeaves': True, 'curveRes': (8, 5, 3, 1), 'minRadius': 0.001500000013038516, 'leafDist': '6', 'rotateV': (15.0, 0.0, 0.0, 0.0), 'bevel': True, 'curveBack': (0.0, 0.0, 0.0, 0.0), 'leafScaleV': 0.15000000596046448, 'prunePowerHigh': 0.5, 'rootFlare': 1.0, 'prune': False, 'branches': (0, 55, 10, 1), 'taperCrown': 0.5, 'useArm': False, 'splitBias': 0.5499999523162842, 'segSplits': (0.10000000149011612, 0.5, 0.20000000298023224, 0.0), 'resU': 4, 'useParentAngle': True, 'ratio': 0.014999999664723873, 'taper': (1.0, 1.0, 1.0, 1.0), 'length': (0.800000011920929, 0.6000000238418579, 0.5, 0.10000000149011612), 'scale0': 1.0, 'scaleV': 2.0, 'leafRotate': 137.5, 'shape': '7', 'scaleV0': 0.10000000149011612, 'leaves': 150, 'scale': 5.0, 'leafShape': 'hex', 'prunePowerLow': 0.0010000000474974513, 'splitAngle': (18.0, 18.0, 22.0, 0.0), 'seed': 0, 'showLeaves': True, 'downAngle': (0.0, 26.209999084472656, 52.55999755859375, 30.0), 'leafDownAngle': 30.0, 'autoTaper': True, 'rMode': 'rotate', 'leafScaleX': 0.20000000298023224, 'leafScaleT': 0.10000000149011612, 'gust': 1.0, 'armAnim': False, 'wind': 1.0, 'leafRotateV': 15.0, 'baseSplits': 3, 'attractOut': (0.0, 0.800000011920929, 0.0, 0.0), 'armLevels': 2, 'leafAnim': False, 'ratioPower': 1.2000000476837158, 'splitHeight': 0.20000000298023224, 'splitByLen': True, 'af1': 1.0, 'branchDist': 1.5, 'closeTip': False, 'previewArm': False, 'attractUp': (3.5, -1.899843692779541, 0.0, 0.0), 'bevelRes': 1, 'pruneWidth': 0.3400000035762787, 'gustF': 0.07500000298023224, 'leafangle': -12.0, 'curveV': (20.0, 50.0, 75.0, 0.0), 'useOldDownAngle': True, 'leafDownAngleV': -10.0, 'frameRate': 1.0, 'splitAngleV': (5.0, 5.0, 5.0, 0.0), 'levels': 2, 'downAngleV': (0.0, 10.0, 10.0, 10.0), 'customShape': (0.5, 1.0, 0.30000001192092896, 0.5), 'curve': (0.0, -15.0, 0.0, 0.0)}
{'handleType': '0', 'rotate': (99.5, 137.5, 137.5, 137.5), 'baseSize_s': 0.1600000560283661, 'af2': 1.0, 'pruneRatio': 0.75, 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'pruneWidthPeak': 0.5, 'boneStep': (1, 1, 1, 1), 'nrings': 0, 'leafScale': 0.4000000059604645, 'makeMesh': False, 'baseSize': 0.30000001192092896, 'lengthV': (0.0, 0.10000000149011612, 0.0, 0.0), 'shapeS': '10', 'pruneBase': 0.11999999731779099, 'af3': 4.0, 'loopFrames': 0, 'horzLeaves': True, 'curveRes': (8, 5, 3, 1), 'minRadius': 0.001500000013038516, 'leafDist': '6', 'rotateV': (15.0, 0.0, 0.0, 0.0), 'bevel': True, 'curveBack': (0.0, 0.0, 0.0, 0.0), 'leafScaleV': 0.15000000596046448, 'prunePowerHigh': 0.5, 'rootFlare': 1.0, 'prune': False, 'branches': (0, 55, 10, 1), 'taperCrown': 0.5, 'useArm': False, 'splitBias': 0.5499999523162842, 'segSplits': (0.10000000149011612, 0.5, 0.20000000298023224, 0.0), 'resU': 4, 'useParentAngle': True, 'ratio': 0.014999999664723873, 'taper': (1.0, 1.0, 1.0, 1.0), 'length': (0.800000011920929, 0.6000000238418579, 0.5, 0.10000000149011612), 'scale0': 1.0, 'scaleV': 2.0, 'leafRotate': 137.5, 'shape': '7', 'scaleV0': 0.10000000149011612, 'leaves': 150, 'scale': 5.0, 'leafShape': 'hex', 'prunePowerLow': 0.0010000000474974513, 'splitAngle': (18.0, 18.0, 22.0, 0.0), 'seed': 0, 'showLeaves': True, 'downAngle': (0.0, 26.209999084472656, 52.55999755859375, 30.0), 'leafDownAngle': 30.0, 'autoTaper': True, 'rMode': 'rotate', 'leafScaleX': 0.20000000298023224, 'leafScaleT': 0.10000000149011612, 'gust': 1.0, 'armAnim': False, 'wind': 1.0, 'leafRotateV': 15.0, 'baseSplits': 3, 'attractOut': (0.0, 0.800000011920929, 0.0, 0.0), 'armLevels': 2, 'leafAnim': False, 'ratioPower': 1.2000000476837158, 'splitHeight': 0.20000000298023224, 'splitByLen': True, 'af1': 1.0, 'branchDist': 1.5, 'closeTip': False, 'previewArm': False, 'attractUp': (3.5, -1.899843692779541, 0.0, 0.0), 'bevelRes': 1, 'pruneWidth': 0.3400000035762787, 'gustF': 0.07500000298023224, 'leafangle': -12.0, 'curveV': (20.0, 50.0, 75.0, 0.0), 'useOldDownAngle': True, 'leafDownAngleV': -10.0, 'frameRate': 1.0, 'splitAngleV': (5.0, 5.0, 5.0, 0.0), 'levels': 2, 'downAngleV': (0.0, 10.0, 10.0, 10.0), 'customShape': (0.5, 1.0, 0.30000001192092896, 0.5), 'curve': (0.0, -15.0, 0.0, 0.0)}

View File

@ -1 +1 @@
{'pruneRatio': 1.0, 'wind': 1.0, 'prune': False, 'splitByLen': True, 'attractUp': (0.0, 0.3499999940395355, 0.25, 0.15000000596046448), 'segSplits': (0.0, 0.3499999940395355, 0.6000000238418579, 0.0), 'rMode': 'rotate', 'rotate': (99.5, 137.5, -45.0, -60.0), 'curve': (0.0, 20.0, -10.0, 0.0), 'af2': 1.0, 'seed': 0, 'length': (1.0, 0.20000000298023224, 0.550000011920929, 0.44999998807907104), 'attractOut': (0.0, 0.0, 0.0, 0.0), 'leafScaleT': 0.0, 'scaleV': 15.0, 'splitHeight': 0.20000000298023224, 'minRadius': 0.0020000000949949026, 'leafRotate': 137.5, 'curveRes': (12, 4, 3, 2), 'curveV': (40.0, 30.0, 15.0, 10.0), 'nrings': 0, 'levels': 4, 'frameRate': 1.0, 'ratioPower': 1.2000000476837158, 'leafDownAngle': 45.0, 'armLevels': 2, 'branches': (0, 75, 16, 10), 'splitAngleV': (0.0, 0.0, 0.0, 0.0), 'shape': '8', 'rotateV': (15.0, 0.0, 15.0, 45.0), 'loopFrames': 0, 'curveBack': (0.0, 0.0, 0.0, 0.0), 'taperCrown': 0.0, 'prunePowerLow': 0.0010000000474974513, 'handleType': '0', 'af3': 4.0, 'useParentAngle': True, 'customShape': (0.5, 1.0, 0.3499999940395355, 0.10000000149011612), 'scale0': 1.0, 'rootFlare': 1.2999999523162842, 'leafScaleV': 0.0, 'leafScale': 0.17000000178813934, 'leafangle': 0.0, 'scaleV0': 0.10000000149011612, 'downAngleV': (0.0, 30.0, 10.0, 10.0), 'af1': 1.0, 'autoTaper': True, 'scale': 35.0, 'gustF': 0.07500000298023224, 'ratio': 0.014999999664723873, 'leafScaleX': 1.0, 'shapeS': '7', 'bevelRes': 1, 'bevel': True, 'leaves': 25, 'splitAngle': (0.0, 12.0, 18.0, 0.0), 'downAngle': (90.0, 130.0, 45.0, 45.0), 'previewArm': False, 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'showLeaves': False, 'leafAnim': False, 'baseSize': 0.33000001311302185, 'gust': 1.0, 'horzLeaves': True, 'baseSize_s': 0.5, 'leafDownAngleV': 10.0, 'makeMesh': False, 'leafDist': '6', 'armAnim': False, 'baseSplits': 0, 'lengthV': (0.0, 0.10000000149011612, 0.25, 0.25), 'branchDist': 1.850000023841858, 'useArm': False, 'useOldDownAngle': False, 'taper': (1.0, 1.0, 1.0, 1.0), 'pruneBase': 0.30000001192092896, 'splitBias': 0.0, 'boneStep': (1, 1, 1, 1), 'leafShape': 'hex', 'resU': 4, 'prunePowerHigh': 0.5, 'closeTip': True, 'pruneWidth': 0.4000000059604645, 'leafRotateV': 0.0, 'pruneWidthPeak': 0.6000000238418579}
{'pruneRatio': 1.0, 'wind': 1.0, 'prune': False, 'splitByLen': True, 'attractUp': (0.0, 0.3499999940395355, 0.25, 0.15000000596046448), 'segSplits': (0.0, 0.3499999940395355, 0.6000000238418579, 0.0), 'rMode': 'rotate', 'rotate': (99.5, 137.5, -45.0, -60.0), 'curve': (0.0, 20.0, -10.0, 0.0), 'af2': 1.0, 'seed': 0, 'length': (1.0, 0.20000000298023224, 0.550000011920929, 0.44999998807907104), 'attractOut': (0.0, 0.0, 0.0, 0.0), 'leafScaleT': 0.0, 'scaleV': 15.0, 'splitHeight': 0.20000000298023224, 'minRadius': 0.0020000000949949026, 'leafRotate': 137.5, 'curveRes': (12, 4, 3, 2), 'curveV': (40.0, 30.0, 15.0, 10.0), 'nrings': 0, 'levels': 4, 'frameRate': 1.0, 'ratioPower': 1.2000000476837158, 'leafDownAngle': 45.0, 'armLevels': 2, 'branches': (0, 75, 16, 10), 'splitAngleV': (0.0, 0.0, 0.0, 0.0), 'shape': '8', 'rotateV': (15.0, 0.0, 15.0, 45.0), 'loopFrames': 0, 'curveBack': (0.0, 0.0, 0.0, 0.0), 'taperCrown': 0.0, 'prunePowerLow': 0.0010000000474974513, 'handleType': '0', 'af3': 4.0, 'useParentAngle': True, 'customShape': (0.5, 1.0, 0.3499999940395355, 0.10000000149011612), 'scale0': 1.0, 'rootFlare': 1.2999999523162842, 'leafScaleV': 0.0, 'leafScale': 0.17000000178813934, 'leafangle': 0.0, 'scaleV0': 0.10000000149011612, 'downAngleV': (0.0, 30.0, 10.0, 10.0), 'af1': 1.0, 'autoTaper': True, 'scale': 35.0, 'gustF': 0.07500000298023224, 'ratio': 0.014999999664723873, 'leafScaleX': 1.0, 'shapeS': '7', 'bevelRes': 1, 'bevel': True, 'leaves': 25, 'splitAngle': (0.0, 12.0, 18.0, 0.0), 'downAngle': (90.0, 130.0, 45.0, 45.0), 'previewArm': False, 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'showLeaves': False, 'leafAnim': False, 'baseSize': 0.33000001311302185, 'gust': 1.0, 'horzLeaves': True, 'baseSize_s': 0.5, 'leafDownAngleV': 10.0, 'makeMesh': False, 'leafDist': '6', 'armAnim': False, 'baseSplits': 0, 'lengthV': (0.0, 0.10000000149011612, 0.25, 0.25), 'branchDist': 1.850000023841858, 'useArm': False, 'useOldDownAngle': False, 'taper': (1.0, 1.0, 1.0, 1.0), 'pruneBase': 0.30000001192092896, 'splitBias': 0.0, 'boneStep': (1, 1, 1, 1), 'leafShape': 'hex', 'resU': 4, 'prunePowerHigh': 0.5, 'closeTip': True, 'pruneWidth': 0.4000000059604645, 'leafRotateV': 0.0, 'pruneWidthPeak': 0.6000000238418579}

View File

@ -1 +1 @@
{'leafScaleT': -0.5, 'shapeS': '10', 'scaleV': 2.0, 'resU': 4, 'boneStep': (1, 1, 1, 1), 'af3': 4.0, 'baseSize': 0.4000000059604645, 'prunePowerLow': 0.0010000000474974513, 'leafRotateV': 0.0, 'rootFlare': 1.0, 'customShape': (0.699999988079071, 1.0, 0.20000000298023224, 0.800000011920929), 'attractOut': (0.0, 0.75, 0.25, 0.0), 'useArm': False, 'branches': (0, 50, 10, 16), 'leafDownAngle': 45.0, 'length': (1.0, 0.30000001192092896, 0.5, 0.20000000298023224), 'segSplits': (0.25, 0.4000000059604645, 0.5, 0.0), 'makeMesh': False, 'curveV': (400.0, 150.0, 100.0, 0.0), 'curveBack': (0.0, 0.0, 0.0, 0.0), 'af1': 1.0, 'closeTip': False, 'frameRate': 1.0, 'leafangle': -10.0, 'af2': 1.0, 'rMode': 'rotate', 'leafScaleV': 0.0, 'rotateV': (15.0, 0.0, 0.0, 0.0), 'useParentAngle': False, 'taperCrown': 0.0, 'minRadius': 0.001500000013038516, 'splitAngleV': (5.0, 5.0, 0.0, 0.0), 'scaleV0': 0.10000000149011612, 'bevel': True, 'leafDownAngleV': 10.0, 'previewArm': False, 'showLeaves': True, 'ratioPower': 1.25, 'handleType': '0', 'branchDist': 1.0, 'leafScaleX': 0.20000000298023224, 'prune': False, 'splitHeight': 0.30000001192092896, 'baseSplits': 2, 'baseSize_s': 0.25, 'downAngle': (90.0, 90.0, 30.0, 30.0), 'bevelRes': 1, 'leafAnim': False, 'loopFrames': 0, 'lengthV': (0.0, 0.0, 0.0, 0.0), 'gust': 1.0, 'downAngleV': (0.0, 90.0, 15.0, 10.0), 'leafRotate': 137.5, 'wind': 1.0, 'leaves': -5, 'curve': (0.0, -20.0, -20.0, 0.0), 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'pruneRatio': 1.0, 'pruneBase': 0.30000001192092896, 'armAnim': False, 'splitBias': 0.0, 'rotate': (99.5, 137.5, 137.5, 137.5), 'armLevels': 2, 'scale': 6.0, 'prunePowerHigh': 0.5, 'nrings': 0, 'splitByLen': True, 'leafShape': 'hex', 'splitAngle': (15.0, 20.0, 25.0, 0.0), 'ratio': 0.019999999552965164, 'scale0': 1.0, 'autoTaper': True, 'pruneWidth': 0.4000000059604645, 'leafScale': 0.17000000178813934, 'seed': 0, 'curveRes': (16, 5, 3, 1), 'horzLeaves': True, 'useOldDownAngle': False, 'levels': 4, 'pruneWidthPeak': 0.6000000238418579, 'attractUp': (0.0, -0.3499999940395355, -0.20000000298023224, 0.0), 'taper': (1.0, 1.0, 1.0, 1.0), 'leafDist': '6', 'gustF': 0.07500000298023224, 'shape': '8'}
{'leafScaleT': -0.5, 'shapeS': '10', 'scaleV': 2.0, 'resU': 4, 'boneStep': (1, 1, 1, 1), 'af3': 4.0, 'baseSize': 0.4000000059604645, 'prunePowerLow': 0.0010000000474974513, 'leafRotateV': 0.0, 'rootFlare': 1.0, 'customShape': (0.699999988079071, 1.0, 0.20000000298023224, 0.800000011920929), 'attractOut': (0.0, 0.75, 0.25, 0.0), 'useArm': False, 'branches': (0, 50, 10, 16), 'leafDownAngle': 45.0, 'length': (1.0, 0.30000001192092896, 0.5, 0.20000000298023224), 'segSplits': (0.25, 0.4000000059604645, 0.5, 0.0), 'makeMesh': False, 'curveV': (400.0, 150.0, 100.0, 0.0), 'curveBack': (0.0, 0.0, 0.0, 0.0), 'af1': 1.0, 'closeTip': False, 'frameRate': 1.0, 'leafangle': -10.0, 'af2': 1.0, 'rMode': 'rotate', 'leafScaleV': 0.0, 'rotateV': (15.0, 0.0, 0.0, 0.0), 'useParentAngle': False, 'taperCrown': 0.0, 'minRadius': 0.001500000013038516, 'splitAngleV': (5.0, 5.0, 0.0, 0.0), 'scaleV0': 0.10000000149011612, 'bevel': True, 'leafDownAngleV': 10.0, 'previewArm': False, 'showLeaves': True, 'ratioPower': 1.25, 'handleType': '0', 'branchDist': 1.0, 'leafScaleX': 0.20000000298023224, 'prune': False, 'splitHeight': 0.30000001192092896, 'baseSplits': 2, 'baseSize_s': 0.25, 'downAngle': (90.0, 90.0, 30.0, 30.0), 'bevelRes': 1, 'leafAnim': False, 'loopFrames': 0, 'lengthV': (0.0, 0.0, 0.0, 0.0), 'gust': 1.0, 'downAngleV': (0.0, 90.0, 15.0, 10.0), 'leafRotate': 137.5, 'wind': 1.0, 'leaves': -5, 'curve': (0.0, -20.0, -20.0, 0.0), 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'pruneRatio': 1.0, 'pruneBase': 0.30000001192092896, 'armAnim': False, 'splitBias': 0.0, 'rotate': (99.5, 137.5, 137.5, 137.5), 'armLevels': 2, 'scale': 6.0, 'prunePowerHigh': 0.5, 'nrings': 0, 'splitByLen': True, 'leafShape': 'hex', 'splitAngle': (15.0, 20.0, 25.0, 0.0), 'ratio': 0.019999999552965164, 'scale0': 1.0, 'autoTaper': True, 'pruneWidth': 0.4000000059604645, 'leafScale': 0.17000000178813934, 'seed': 0, 'curveRes': (16, 5, 3, 1), 'horzLeaves': True, 'useOldDownAngle': False, 'levels': 4, 'pruneWidthPeak': 0.6000000238418579, 'attractUp': (0.0, -0.3499999940395355, -0.20000000298023224, 0.0), 'taper': (1.0, 1.0, 1.0, 1.0), 'leafDist': '6', 'gustF': 0.07500000298023224, 'shape': '8'}

View File

@ -1 +1 @@
{'leafScale': 0.17000000178813934, 'autoTaper': True, 'customShape': (0.5, 1.0, 0.30000001192092896, 0.5), 'leafShape': 'hex', 'curve': (0.0, -40.0, -40.0, 0.0), 'ratio': 0.014999999664723873, 'splitBias': 0.0, 'pruneWidth': 0.4000000059604645, 'downAngleV': (0.0, 80.0, 10.0, 10.0), 'rotate': (99.5, 137.5, 137.5, 137.5), 'pruneRatio': 1.0, 'leafDownAngle': 45.0, 'makeMesh': False, 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'rMode': 'rotate', 'splitAngleV': (0.0, 0.0, 0.0, 0.0), 'branchDist': 1.0, 'bevel': False, 'minRadius': 0.001500000013038516, 'prune': False, 'leafRotateV': 0.0, 'splitAngle': (0.0, 0.0, 0.0, 0.0), 'armAnim': False, 'boneStep': (1, 1, 1, 1), 'pruneBase': 0.30000001192092896, 'taperCrown': 0.0, 'baseSplits': 0, 'baseSize_s': 0.25, 'handleType': '0', 'baseSize': 0.4000000059604645, 'af1': 1.0, 'levels': 2, 'leafScaleV': 0.0, 'resU': 4, 'seed': 0, 'downAngle': (90.0, 110.0, 45.0, 45.0), 'leafangle': 0.0, 'scaleV0': 0.10000000149011612, 'prunePowerHigh': 0.5, 'splitByLen': True, 'wind': 1.0, 'shape': '7', 'prunePowerLow': 0.0010000000474974513, 'scale': 13.0, 'leafAnim': False, 'curveBack': (0.0, 0.0, 0.0, 0.0), 'leafScaleX': 1.0, 'horzLeaves': True, 'splitHeight': 0.20000000298023224, 'leafScaleT': 0.0, 'scaleV': 3.0, 'leafDist': '6', 'nrings': 0, 'curveRes': (8, 5, 3, 1), 'shapeS': '4', 'bevelRes': 0, 'useOldDownAngle': False, 'useParentAngle': True, 'armLevels': 2, 'scale0': 1.0, 'taper': (1.0, 1.0, 1.0, 1.0), 'pruneWidthPeak': 0.6000000238418579, 'previewArm': False, 'leaves': 25, 'ratioPower': 1.100000023841858, 'gustF': 0.07500000298023224, 'curveV': (20.0, 50.0, 75.0, 0.0), 'showLeaves': False, 'frameRate': 1.0, 'length': (1.0, 0.30000001192092896, 0.6000000238418579, 0.44999998807907104), 'branches': (0, 50, 30, 10), 'useArm': False, 'loopFrames': 0, 'gust': 1.0, 'af3': 4.0, 'closeTip': False, 'leafRotate': 137.5, 'attractUp': (0.0, 0.0, 0.5, 0.5), 'leafDownAngleV': 10.0, 'rootFlare': 1.0, 'af2': 1.0, 'lengthV': (0.0, 0.0, 0.0, 0.0), 'rotateV': (15.0, 0.0, 0.0, 0.0), 'attractOut': (0.0, 0.0, 0.0, 0.0), 'segSplits': (0.0, 0.0, 0.0, 0.0)}
{'leafScale': 0.17000000178813934, 'autoTaper': True, 'customShape': (0.5, 1.0, 0.30000001192092896, 0.5), 'leafShape': 'hex', 'curve': (0.0, -40.0, -40.0, 0.0), 'ratio': 0.014999999664723873, 'splitBias': 0.0, 'pruneWidth': 0.4000000059604645, 'downAngleV': (0.0, 80.0, 10.0, 10.0), 'rotate': (99.5, 137.5, 137.5, 137.5), 'pruneRatio': 1.0, 'leafDownAngle': 45.0, 'makeMesh': False, 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'rMode': 'rotate', 'splitAngleV': (0.0, 0.0, 0.0, 0.0), 'branchDist': 1.0, 'bevel': False, 'minRadius': 0.001500000013038516, 'prune': False, 'leafRotateV': 0.0, 'splitAngle': (0.0, 0.0, 0.0, 0.0), 'armAnim': False, 'boneStep': (1, 1, 1, 1), 'pruneBase': 0.30000001192092896, 'taperCrown': 0.0, 'baseSplits': 0, 'baseSize_s': 0.25, 'handleType': '0', 'baseSize': 0.4000000059604645, 'af1': 1.0, 'levels': 2, 'leafScaleV': 0.0, 'resU': 4, 'seed': 0, 'downAngle': (90.0, 110.0, 45.0, 45.0), 'leafangle': 0.0, 'scaleV0': 0.10000000149011612, 'prunePowerHigh': 0.5, 'splitByLen': True, 'wind': 1.0, 'shape': '7', 'prunePowerLow': 0.0010000000474974513, 'scale': 13.0, 'leafAnim': False, 'curveBack': (0.0, 0.0, 0.0, 0.0), 'leafScaleX': 1.0, 'horzLeaves': True, 'splitHeight': 0.20000000298023224, 'leafScaleT': 0.0, 'scaleV': 3.0, 'leafDist': '6', 'nrings': 0, 'curveRes': (8, 5, 3, 1), 'shapeS': '4', 'bevelRes': 0, 'useOldDownAngle': False, 'useParentAngle': True, 'armLevels': 2, 'scale0': 1.0, 'taper': (1.0, 1.0, 1.0, 1.0), 'pruneWidthPeak': 0.6000000238418579, 'previewArm': False, 'leaves': 25, 'ratioPower': 1.100000023841858, 'gustF': 0.07500000298023224, 'curveV': (20.0, 50.0, 75.0, 0.0), 'showLeaves': False, 'frameRate': 1.0, 'length': (1.0, 0.30000001192092896, 0.6000000238418579, 0.44999998807907104), 'branches': (0, 50, 30, 10), 'useArm': False, 'loopFrames': 0, 'gust': 1.0, 'af3': 4.0, 'closeTip': False, 'leafRotate': 137.5, 'attractUp': (0.0, 0.0, 0.5, 0.5), 'leafDownAngleV': 10.0, 'rootFlare': 1.0, 'af2': 1.0, 'lengthV': (0.0, 0.0, 0.0, 0.0), 'rotateV': (15.0, 0.0, 0.0, 0.0), 'attractOut': (0.0, 0.0, 0.0, 0.0), 'segSplits': (0.0, 0.0, 0.0, 0.0)}

View File

@ -1 +1 @@
{'leafDownAngle': 45.0, 'handleType': '0', 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'useArm': False, 'rootFlare': 1.0, 'segSplits': (0.44999998807907104, 0.5, 0.800000011920929, 0.0), 'leafRotateV': 0.0, 'leaves': 32, 'baseSplits': 1, 'rotate': (99.5, 137.5, 137.5, 137.5), 'scale': 8.0, 'makeMesh': False, 'leafDownAngleV': 10.0, 'curve': (0.0, 30.0, 0.0, 0.0), 'splitBias': 0.0, 'leafScale': 0.18000000715255737, 'levels': 3, 'leafScaleT': 0.3499999940395355, 'seed': 0, 'autoTaper': True, 'pruneWidthPeak': 0.6000000238418579, 'branchDist': 1.25, 'prune': False, 'splitAngle': (8.0, 18.0, 18.0, 0.0), 'shapeS': '7', 'useParentAngle': True, 'af1': 1.0, 'armAnim': False, 'resU': 4, 'ratioPower': 1.2000000476837158, 'scaleV': 2.0, 'splitHeight': 0.20000000298023224, 'leafRotate': 137.5, 'customShape': (0.5, 1.0, 0.30000001192092896, 0.5), 'shape': '7', 'ratio': 0.019999999552965164, 'rMode': 'rotate', 'downAngle': (90.0, 48.0, 45.0, 45.0), 'bevelRes': 2, 'showLeaves': True, 'wind': 1.0, 'loopFrames': 0, 'splitByLen': True, 'lengthV': (0.0, 0.029999999329447746, 0.15000000596046448, 0.0), 'leafShape': 'hex', 'downAngleV': (0.0, 48.0, 10.0, 10.0), 'leafangle': -35.0, 'bevel': True, 'gustF': 0.07500000298023224, 'taper': (1.0, 1.0, 1.0, 1.0), 'previewArm': False, 'frameRate': 1.0, 'curveBack': (0.0, -30.0, -20.0, 0.0), 'taperCrown': 0.20000000298023224, 'rotateV': (15.0, 0.0, 0.0, 0.0), 'scaleV0': 0.20000000298023224, 'gust': 1.0, 'horzLeaves': True, 'attractUp': (-0.5, -0.699999988079071, 0.0, 0.0), 'splitAngleV': (2.0, 5.0, 5.0, 0.0), 'pruneRatio': 1.0, 'curveV': (10.0, 35.0, 35.0, 0.0), 'prunePowerHigh': 0.5, 'closeTip': False, 'leafScaleV': 0.20000000298023224, 'leafAnim': False, 'minRadius': 0.0020000000949949026, 'af3': 4.0, 'attractOut': (0.0, 0.4000000059604645, 0.5, 0.0), 'branches': (0, 110, 18, 10), 'leafScaleX': 0.6499999761581421, 'length': (1.0, 0.46000000834465027, 0.44999998807907104, 0.44999998807907104), 'useOldDownAngle': False, 'armLevels': 2, 'boneStep': (1, 1, 1, 1), 'pruneBase': 0.30000001192092896, 'curveRes': (8, 5, 3, 1), 'prunePowerLow': 0.0010000000474974513, 'af2': 1.0, 'pruneWidth': 0.4000000059604645, 'nrings': 0, 'baseSize_s': 0.25, 'baseSize': 0.2800000011920929, 'leafDist': '6', 'scale0': 1.0}
{'leafDownAngle': 45.0, 'handleType': '0', 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'useArm': False, 'rootFlare': 1.0, 'segSplits': (0.44999998807907104, 0.5, 0.800000011920929, 0.0), 'leafRotateV': 0.0, 'leaves': 32, 'baseSplits': 1, 'rotate': (99.5, 137.5, 137.5, 137.5), 'scale': 8.0, 'makeMesh': False, 'leafDownAngleV': 10.0, 'curve': (0.0, 30.0, 0.0, 0.0), 'splitBias': 0.0, 'leafScale': 0.18000000715255737, 'levels': 3, 'leafScaleT': 0.3499999940395355, 'seed': 0, 'autoTaper': True, 'pruneWidthPeak': 0.6000000238418579, 'branchDist': 1.25, 'prune': False, 'splitAngle': (8.0, 18.0, 18.0, 0.0), 'shapeS': '7', 'useParentAngle': True, 'af1': 1.0, 'armAnim': False, 'resU': 4, 'ratioPower': 1.2000000476837158, 'scaleV': 2.0, 'splitHeight': 0.20000000298023224, 'leafRotate': 137.5, 'customShape': (0.5, 1.0, 0.30000001192092896, 0.5), 'shape': '7', 'ratio': 0.019999999552965164, 'rMode': 'rotate', 'downAngle': (90.0, 48.0, 45.0, 45.0), 'bevelRes': 2, 'showLeaves': True, 'wind': 1.0, 'loopFrames': 0, 'splitByLen': True, 'lengthV': (0.0, 0.029999999329447746, 0.15000000596046448, 0.0), 'leafShape': 'hex', 'downAngleV': (0.0, 48.0, 10.0, 10.0), 'leafangle': -35.0, 'bevel': True, 'gustF': 0.07500000298023224, 'taper': (1.0, 1.0, 1.0, 1.0), 'previewArm': False, 'frameRate': 1.0, 'curveBack': (0.0, -30.0, -20.0, 0.0), 'taperCrown': 0.20000000298023224, 'rotateV': (15.0, 0.0, 0.0, 0.0), 'scaleV0': 0.20000000298023224, 'gust': 1.0, 'horzLeaves': True, 'attractUp': (-0.5, -0.699999988079071, 0.0, 0.0), 'splitAngleV': (2.0, 5.0, 5.0, 0.0), 'pruneRatio': 1.0, 'curveV': (10.0, 35.0, 35.0, 0.0), 'prunePowerHigh': 0.5, 'closeTip': False, 'leafScaleV': 0.20000000298023224, 'leafAnim': False, 'minRadius': 0.0020000000949949026, 'af3': 4.0, 'attractOut': (0.0, 0.4000000059604645, 0.5, 0.0), 'branches': (0, 110, 18, 10), 'leafScaleX': 0.6499999761581421, 'length': (1.0, 0.46000000834465027, 0.44999998807907104, 0.44999998807907104), 'useOldDownAngle': False, 'armLevels': 2, 'boneStep': (1, 1, 1, 1), 'pruneBase': 0.30000001192092896, 'curveRes': (8, 5, 3, 1), 'prunePowerLow': 0.0010000000474974513, 'af2': 1.0, 'pruneWidth': 0.4000000059604645, 'nrings': 0, 'baseSize_s': 0.25, 'baseSize': 0.2800000011920929, 'leafDist': '6', 'scale0': 1.0}

View File

@ -1 +1 @@
{'downAngleV': (0.0, 42.0, 10.0, 10.0), 'useOldDownAngle': False, 'splitBias': 0.0, 'branchDist': 1.600000023841858, 'downAngle': (90.0, 110.0, 45.0, 45.0), 'leafScale': 0.20000000298023224, 'baseSize': 0.06799984723329544, 'shapeS': '4', 'leafScaleX': 0.019999999552965164, 'nrings': 7, 'gustF': 0.07500000298023224, 'showLeaves': True, 'taperCrown': 0.0, 'curveBack': (0.0, 0.0, 0.0, 0.0), 'leafShape': 'rect', 'makeMesh': False, 'scale0': 1.0, 'length': (1.0, 0.3199999928474426, 0.75, 0.44999998807907104), 'ratioPower': 1.0, 'taper': (1.0, 1.0, 1.0, 1.0), 'baseSize_s': 0.25, 'splitHeight': 0.20000000298023224, 'handleType': '0', 'pruneBase': 0.30000001192092896, 'attractUp': (2.0, 0.0, 0.5, 0.5), 'boneStep': (1, 1, 1, 1), 'seed': 0, 'leafDownAngle': 65.0, 'attractOut': (0.0, 0.0, 0.0, 0.0), 'leafAnim': False, 'gust': 1.0, 'curveV': (100.0, 100.0, 100.0, 0.0), 'splitAngle': (0.0, 22.0, 25.0, 0.0), 'prunePowerLow': 0.0010000000474974513, 'leafangle': -10.0, 'frameRate': 1.0, 'pruneRatio': 1.0, 'rMode': 'rotate', 'shape': '8', 'segSplits': (0.0, 0.30000001192092896, 0.4000000059604645, 0.0), 'branches': (0, 36, 7, 10), 'prunePowerHigh': 0.5, 'af1': 1.0, 'closeTip': False, 'splitAngleV': (0.0, 5.0, 0.0, 0.0), 'ratio': 0.019999999552965164, 'minRadius': 0.001500000013038516, 'levels': 3, 'leafRotate': 137.5, 'armLevels': 2, 'horzLeaves': False, 'pruneWidth': 0.4000000059604645, 'baseSplits': 0, 'scale': 4.0, 'leafScaleV': 0.10000000149011612, 'splitByLen': True, 'useParentAngle': True, 'previewArm': False, 'wind': 1.0, 'leafDist': '3', 'leafScaleT': 0.25, 'bevel': True, 'resU': 4, 'leafDownAngleV': 55.0, 'pruneWidthPeak': 0.6000000238418579, 'af3': 4.0, 'scaleV': 1.0, 'rootFlare': 1.0, 'loopFrames': 0, 'curve': (0.0, -40.0, -30.0, 0.0), 'leaves': 500, 'scaleV0': 0.10000000149011612, 'rotate': (99.5, 137.5, -90.0, 137.5), 'curveRes': (8, 5, 3, 1), 'useArm': False, 'af2': 1.0, 'bevelRes': 2, 'autoTaper': True, 'lengthV': (0.0, 0.15000000596046448, 0.25, 0.0), 'armAnim': False, 'prune': False, 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'leafRotateV': 30.0, 'customShape': (0.8999999761581421, 1.0, 0.20000000298023224, 0.20000000298023224), 'rotateV': (15.0, 0.0, 0.0, 0.0)}
{'downAngleV': (0.0, 42.0, 10.0, 10.0), 'useOldDownAngle': False, 'splitBias': 0.0, 'branchDist': 1.600000023841858, 'downAngle': (90.0, 110.0, 45.0, 45.0), 'leafScale': 0.20000000298023224, 'baseSize': 0.06799984723329544, 'shapeS': '4', 'leafScaleX': 0.019999999552965164, 'nrings': 7, 'gustF': 0.07500000298023224, 'showLeaves': True, 'taperCrown': 0.0, 'curveBack': (0.0, 0.0, 0.0, 0.0), 'leafShape': 'rect', 'makeMesh': False, 'scale0': 1.0, 'length': (1.0, 0.3199999928474426, 0.75, 0.44999998807907104), 'ratioPower': 1.0, 'taper': (1.0, 1.0, 1.0, 1.0), 'baseSize_s': 0.25, 'splitHeight': 0.20000000298023224, 'handleType': '0', 'pruneBase': 0.30000001192092896, 'attractUp': (2.0, 0.0, 0.5, 0.5), 'boneStep': (1, 1, 1, 1), 'seed': 0, 'leafDownAngle': 65.0, 'attractOut': (0.0, 0.0, 0.0, 0.0), 'leafAnim': False, 'gust': 1.0, 'curveV': (100.0, 100.0, 100.0, 0.0), 'splitAngle': (0.0, 22.0, 25.0, 0.0), 'prunePowerLow': 0.0010000000474974513, 'leafangle': -10.0, 'frameRate': 1.0, 'pruneRatio': 1.0, 'rMode': 'rotate', 'shape': '8', 'segSplits': (0.0, 0.30000001192092896, 0.4000000059604645, 0.0), 'branches': (0, 36, 7, 10), 'prunePowerHigh': 0.5, 'af1': 1.0, 'closeTip': False, 'splitAngleV': (0.0, 5.0, 0.0, 0.0), 'ratio': 0.019999999552965164, 'minRadius': 0.001500000013038516, 'levels': 3, 'leafRotate': 137.5, 'armLevels': 2, 'horzLeaves': False, 'pruneWidth': 0.4000000059604645, 'baseSplits': 0, 'scale': 4.0, 'leafScaleV': 0.10000000149011612, 'splitByLen': True, 'useParentAngle': True, 'previewArm': False, 'wind': 1.0, 'leafDist': '3', 'leafScaleT': 0.25, 'bevel': True, 'resU': 4, 'leafDownAngleV': 55.0, 'pruneWidthPeak': 0.6000000238418579, 'af3': 4.0, 'scaleV': 1.0, 'rootFlare': 1.0, 'loopFrames': 0, 'curve': (0.0, -40.0, -30.0, 0.0), 'leaves': 500, 'scaleV0': 0.10000000149011612, 'rotate': (99.5, 137.5, -90.0, 137.5), 'curveRes': (8, 5, 3, 1), 'useArm': False, 'af2': 1.0, 'bevelRes': 2, 'autoTaper': True, 'lengthV': (0.0, 0.15000000596046448, 0.25, 0.0), 'armAnim': False, 'prune': False, 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'leafRotateV': 30.0, 'customShape': (0.8999999761581421, 1.0, 0.20000000298023224, 0.20000000298023224), 'rotateV': (15.0, 0.0, 0.0, 0.0)}

View File

@ -1 +1 @@
{'showLeaves': False, 'leafScaleX': 0.20000000298023224, 'horzLeaves': False, 'useArm': False, 'rMode': 'rotate', 'branchDist': 1.5, 'scale': 15.0, 'armLevels': 2, 'gustF': 0.07500000298023224, 'closeTip': False, 'shape': '4', 'minRadius': 0.001500000013038516, 'leafScaleT': 0.0, 'leafDownAngle': 30.0, 'splitByLen': True, 'prunePowerLow': 0.0010000000474974513, 'splitBias': 0.0, 'autoTaper': True, 'leafRotateV': 30.0, 'scale0': 1.0, 'length': (0.75, 0.5, 1.5, 0.10000000149011612), 'lengthV': (0.0, 0.10000000149011612, 0.0, 0.0), 'bevel': True, 'baseSize': 0.20000000298023224, 'handleType': '1', 'ratioPower': 1.75, 'leafScaleV': 0.0, 'ratio': 0.02500000037252903, 'scaleV': 5.0, 'gust': 1.0, 'baseSplits': 2, 'loopFrames': 0, 'curve': (0.0, 20.0, -40.0, 0.0), 'pruneWidth': 0.5, 'shapeS': '4', 'splitAngleV': (0.0, 10.0, 20.0, 0.0), 'branches': (0, 35, 15, 1), 'frameRate': 1.0, 'splitAngle': (12.0, 30.0, 16.0, 0.0), 'seed': 2789, 'nrings': 0, 'previewArm': False, 'pruneWidthPeak': 0.6000000238418579, 'af1': 1.0, 'splitHeight': 0.20000000298023224, 'rotateV': (15.0, 15.0, 45.0, 0.0), 'attractUp': (0.0, 0.0, -2.75, -3.0), 'curveV': (150.0, 120.0, 0.0, 0.0), 'makeMesh': False, 'leaves': 150, 'curveBack': (0.0, 20.0, 0.0, 0.0), 'taper': (1.0, 1.0, 1.0, 1.0), 'resU': 4, 'useOldDownAngle': False, 'pruneRatio': 0.800000011920929, 'levels': 3, 'taperCrown': 0.0, 'attractOut': (0.0, 0.0, 0.0, 0.0), 'leafRotate': 137.5, 'prunePowerHigh': 0.20000000298023224, 'prune': False, 'leafangle': 0.0, 'bevelRes': 1, 'curveRes': (8, 16, 8, 1), 'rotate': (99.5, 137.5, -60.0, 140.0), 'pruneBase': 0.07000000029802322, 'segSplits': (0.10000000149011612, 0.20000000298023224, 0.20000000298023224, 0.0), 'scaleV0': 0.0, 'boneStep': (1, 1, 1, 1), 'useParentAngle': True, 'armAnim': False, 'wind': 1.0, 'leafDist': '10', 'leafScale': 0.25, 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'leafDownAngleV': 10.0, 'leafAnim': False, 'downAngle': (0.0, 20.0, 30.0, 20.0), 'af2': 1.0, 'af3': 4.0, 'downAngleV': (0.0, 20.0, 10.0, 10.0), 'customShape': (0.5, 1.0, 0.30000001192092896, 0.5), 'leafShape': 'hex', 'rootFlare': 1.0, 'baseSize_s': 0.25}
{'showLeaves': False, 'leafScaleX': 0.20000000298023224, 'horzLeaves': False, 'useArm': False, 'rMode': 'rotate', 'branchDist': 1.5, 'scale': 15.0, 'armLevels': 2, 'gustF': 0.07500000298023224, 'closeTip': False, 'shape': '4', 'minRadius': 0.001500000013038516, 'leafScaleT': 0.0, 'leafDownAngle': 30.0, 'splitByLen': True, 'prunePowerLow': 0.0010000000474974513, 'splitBias': 0.0, 'autoTaper': True, 'leafRotateV': 30.0, 'scale0': 1.0, 'length': (0.75, 0.5, 1.5, 0.10000000149011612), 'lengthV': (0.0, 0.10000000149011612, 0.0, 0.0), 'bevel': True, 'baseSize': 0.20000000298023224, 'handleType': '1', 'ratioPower': 1.75, 'leafScaleV': 0.0, 'ratio': 0.02500000037252903, 'scaleV': 5.0, 'gust': 1.0, 'baseSplits': 2, 'loopFrames': 0, 'curve': (0.0, 20.0, -40.0, 0.0), 'pruneWidth': 0.5, 'shapeS': '4', 'splitAngleV': (0.0, 10.0, 20.0, 0.0), 'branches': (0, 35, 15, 1), 'frameRate': 1.0, 'splitAngle': (12.0, 30.0, 16.0, 0.0), 'seed': 2789, 'nrings': 0, 'previewArm': False, 'pruneWidthPeak': 0.6000000238418579, 'af1': 1.0, 'splitHeight': 0.20000000298023224, 'rotateV': (15.0, 15.0, 45.0, 0.0), 'attractUp': (0.0, 0.0, -2.75, -3.0), 'curveV': (150.0, 120.0, 0.0, 0.0), 'makeMesh': False, 'leaves': 150, 'curveBack': (0.0, 20.0, 0.0, 0.0), 'taper': (1.0, 1.0, 1.0, 1.0), 'resU': 4, 'useOldDownAngle': False, 'pruneRatio': 0.800000011920929, 'levels': 3, 'taperCrown': 0.0, 'attractOut': (0.0, 0.0, 0.0, 0.0), 'leafRotate': 137.5, 'prunePowerHigh': 0.20000000298023224, 'prune': False, 'leafangle': 0.0, 'bevelRes': 1, 'curveRes': (8, 16, 8, 1), 'rotate': (99.5, 137.5, -60.0, 140.0), 'pruneBase': 0.07000000029802322, 'segSplits': (0.10000000149011612, 0.20000000298023224, 0.20000000298023224, 0.0), 'scaleV0': 0.0, 'boneStep': (1, 1, 1, 1), 'useParentAngle': True, 'armAnim': False, 'wind': 1.0, 'leafDist': '10', 'leafScale': 0.25, 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'leafDownAngleV': 10.0, 'leafAnim': False, 'downAngle': (0.0, 20.0, 30.0, 20.0), 'af2': 1.0, 'af3': 4.0, 'downAngleV': (0.0, 20.0, 10.0, 10.0), 'customShape': (0.5, 1.0, 0.30000001192092896, 0.5), 'leafShape': 'hex', 'rootFlare': 1.0, 'baseSize_s': 0.25}

View File

@ -1 +1 @@
{'seed': 0, 'showLeaves': True, 'armLevels': 0, 'leafDist': '6', 'baseSize': 0.3499999940395355, 'loopFrames': 0, 'af3': 4.0, 'previewArm': False, 'leafangle': -45.0, 'useParentAngle': True, 'handleType': '0', 'branches': (0, 60, 30, 10), 'autoTaper': True, 'splitAngle': (12.0, 18.0, 16.0, 0.0), 'baseSize_s': 0.800000011920929, 'closeTip': False, 'af2': 1.0, 'prune': False, 'scale0': 1.0, 'rMode': 'rotate', 'useOldDownAngle': False, 'scaleV0': 0.10000000149011612, 'splitBias': 0.0, 'resU': 2, 'curveBack': (0.0, -5.0, 0.0, 0.0), 'scale': 12.0, 'shape': '8', 'leafDownAngle': 45.0, 'af1': 1.0, 'ratio': 0.019999999552965164, 'horzLeaves': True, 'leafRotate': 137.5, 'minRadius': 0.0020000000949949026, 'bevelRes': 2, 'splitByLen': True, 'rootFlare': 1.149999976158142, 'makeMesh': False, 'downAngleV': (0.0, 25.0, 30.0, 10.0), 'levels': 3, 'scaleV': 2.0, 'armAnim': False, 'lengthV': (0.05000000074505806, 0.20000000298023224, 0.3499999940395355, 0.0), 'pruneWidth': 0.3100000023841858, 'gustF': 0.07500000298023224, 'taper': (1.0, 1.0, 1.0, 1.0), 'splitAngleV': (2.0, 2.0, 0.0, 0.0), 'prunePowerLow': 0.0010000000474974513, 'leafScaleT': 0.20000000298023224, 'leafScaleX': 0.5, 'leafRotateV': 0.0, 'ratioPower': 1.399999976158142, 'segSplits': (0.3499999940395355, 0.3499999940395355, 0.3499999940395355, 0.0), 'downAngle': (90.0, 60.0, 50.0, 45.0), 'rotateV': (0.0, 0.0, 0.0, 0.0), 'gust': 1.0, 'attractUp': (0.0, -1.0, -0.6499999761581421, 0.0), 'leafScaleV': 0.25, 'frameRate': 1.0, 'curveV': (100.0, 80.0, 80.0, 0.0), 'boneStep': (1, 1, 1, 1), 'customShape': (0.699999988079071, 1.0, 0.30000001192092896, 0.5900000333786011), 'pruneBase': 0.30000001192092896, 'leafAnim': False, 'curveRes': (10, 8, 3, 1), 'nrings': 0, 'bevel': True, 'taperCrown': 0.0, 'baseSplits': 2, 'leafShape': 'hex', 'splitHeight': 0.550000011920929, 'wind': 1.0, 'curve': (0.0, -30.0, -25.0, 0.0), 'rotate': (137.5, 137.5, 137.5, 137.5), 'length': (1.0, 0.33000001311302185, 0.375, 0.44999998807907104), 'leafScale': 0.20000000298023224, 'attractOut': (0.0, 0.20000000298023224, 0.25, 0.0), 'prunePowerHigh': 0.10000000149011612, 'branchDist': 1.5, 'useArm': False, 'pruneRatio': 1.0, 'shapeS': '7', 'leafDownAngleV': 10.0, 'pruneWidthPeak': 0.5, 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'leaves': 16}
{'seed': 0, 'showLeaves': True, 'armLevels': 0, 'leafDist': '6', 'baseSize': 0.3499999940395355, 'loopFrames': 0, 'af3': 4.0, 'previewArm': False, 'leafangle': -45.0, 'useParentAngle': True, 'handleType': '0', 'branches': (0, 60, 30, 10), 'autoTaper': True, 'splitAngle': (12.0, 18.0, 16.0, 0.0), 'baseSize_s': 0.800000011920929, 'closeTip': False, 'af2': 1.0, 'prune': False, 'scale0': 1.0, 'rMode': 'rotate', 'useOldDownAngle': False, 'scaleV0': 0.10000000149011612, 'splitBias': 0.0, 'resU': 2, 'curveBack': (0.0, -5.0, 0.0, 0.0), 'scale': 12.0, 'shape': '8', 'leafDownAngle': 45.0, 'af1': 1.0, 'ratio': 0.019999999552965164, 'horzLeaves': True, 'leafRotate': 137.5, 'minRadius': 0.0020000000949949026, 'bevelRes': 2, 'splitByLen': True, 'rootFlare': 1.149999976158142, 'makeMesh': False, 'downAngleV': (0.0, 25.0, 30.0, 10.0), 'levels': 3, 'scaleV': 2.0, 'armAnim': False, 'lengthV': (0.05000000074505806, 0.20000000298023224, 0.3499999940395355, 0.0), 'pruneWidth': 0.3100000023841858, 'gustF': 0.07500000298023224, 'taper': (1.0, 1.0, 1.0, 1.0), 'splitAngleV': (2.0, 2.0, 0.0, 0.0), 'prunePowerLow': 0.0010000000474974513, 'leafScaleT': 0.20000000298023224, 'leafScaleX': 0.5, 'leafRotateV': 0.0, 'ratioPower': 1.399999976158142, 'segSplits': (0.3499999940395355, 0.3499999940395355, 0.3499999940395355, 0.0), 'downAngle': (90.0, 60.0, 50.0, 45.0), 'rotateV': (0.0, 0.0, 0.0, 0.0), 'gust': 1.0, 'attractUp': (0.0, -1.0, -0.6499999761581421, 0.0), 'leafScaleV': 0.25, 'frameRate': 1.0, 'curveV': (100.0, 80.0, 80.0, 0.0), 'boneStep': (1, 1, 1, 1), 'customShape': (0.699999988079071, 1.0, 0.30000001192092896, 0.5900000333786011), 'pruneBase': 0.30000001192092896, 'leafAnim': False, 'curveRes': (10, 8, 3, 1), 'nrings': 0, 'bevel': True, 'taperCrown': 0.0, 'baseSplits': 2, 'leafShape': 'hex', 'splitHeight': 0.550000011920929, 'wind': 1.0, 'curve': (0.0, -30.0, -25.0, 0.0), 'rotate': (137.5, 137.5, 137.5, 137.5), 'length': (1.0, 0.33000001311302185, 0.375, 0.44999998807907104), 'leafScale': 0.20000000298023224, 'attractOut': (0.0, 0.20000000298023224, 0.25, 0.0), 'prunePowerHigh': 0.10000000149011612, 'branchDist': 1.5, 'useArm': False, 'pruneRatio': 1.0, 'shapeS': '7', 'leafDownAngleV': 10.0, 'pruneWidthPeak': 0.5, 'radiusTweak': (1.0, 1.0, 1.0, 1.0), 'leaves': 16}

View File

@ -1 +1 @@
{'curveRes': (8, 16, 12, 1), 'scaleV0': 0.0, 'pruneRatio': 1.0, 'rotate': (0.0, -120.0, -120.0, 140.0), 'resU': 4, 'levels': 2, 'frameRate': 1.0, 'ratioPower': 2.0, 'windGust': 0.0, 'branches': (0, 25, 10, 300), 'attractUp': -3.0, 'bevel': False, 'windSpeed': 2.0, 'rotateV': (0.0, 30.0, 30.0, 0.0), 'segSplits': (0.10000000149011612, 0.20000000298023224, 0.20000000298023224, 0.0), 'handleType': '1', 'shape': '3', 'curveV': (120.0, 90.0, 0.0, 0.0), 'scale': 15.0, 'leafShape': 'hex', 'showLeaves': False, 'ratio': 0.029999999329447746, 'leaves': 15.0, 'armAnim': False, 'leafScale': 0.11999999731779099, 'leafDist': '4', 'useArm': False, 'splitAngle': (3.0, 30.0, 45.0, 0.0), 'lengthV': (0.0, 0.10000000149011612, 0.0, 0.0), 'seed': 0, 'scaleV': 5.0, 'startCurv': 0.0, 'downAngle': (0.0, 20.0, 30.0, 20.0), 'pruneWidth': 0.4000000059604645, 'baseSize': 0.05000000074505806, 'bevelRes': 0, 'length': (0.800000011920929, 0.5, 1.5, 0.10000000149011612), 'downAngleV': (0.0, 10.0, 10.0, 10.0), 'prune': False, 'curve': (0.0, 40.0, 0.0, 0.0), 'taper': (1.0, 1.0, 1.0, 1.0), 'prunePowerHigh': 0.5, 'leafScaleX': 0.20000000298023224, 'curveBack': (20.0, 80.0, 0.0, 0.0), 'bend': 0.0, 'scale0': 1.0, 'prunePowerLow': 0.0010000000474974513, 'splitAngleV': (0.0, 10.0, 20.0, 0.0), 'baseSplits': 2, 'pruneWidthPeak': 0.6000000238418579}
{'curveRes': (8, 16, 12, 1), 'scaleV0': 0.0, 'pruneRatio': 1.0, 'rotate': (0.0, -120.0, -120.0, 140.0), 'resU': 4, 'levels': 2, 'frameRate': 1.0, 'ratioPower': 2.0, 'windGust': 0.0, 'branches': (0, 25, 10, 300), 'attractUp': -3.0, 'bevel': False, 'windSpeed': 2.0, 'rotateV': (0.0, 30.0, 30.0, 0.0), 'segSplits': (0.10000000149011612, 0.20000000298023224, 0.20000000298023224, 0.0), 'handleType': '1', 'shape': '3', 'curveV': (120.0, 90.0, 0.0, 0.0), 'scale': 15.0, 'leafShape': 'hex', 'showLeaves': False, 'ratio': 0.029999999329447746, 'leaves': 15.0, 'armAnim': False, 'leafScale': 0.11999999731779099, 'leafDist': '4', 'useArm': False, 'splitAngle': (3.0, 30.0, 45.0, 0.0), 'lengthV': (0.0, 0.10000000149011612, 0.0, 0.0), 'seed': 0, 'scaleV': 5.0, 'startCurv': 0.0, 'downAngle': (0.0, 20.0, 30.0, 20.0), 'pruneWidth': 0.4000000059604645, 'baseSize': 0.05000000074505806, 'bevelRes': 0, 'length': (0.800000011920929, 0.5, 1.5, 0.10000000149011612), 'downAngleV': (0.0, 10.0, 10.0, 10.0), 'prune': False, 'curve': (0.0, 40.0, 0.0, 0.0), 'taper': (1.0, 1.0, 1.0, 1.0), 'prunePowerHigh': 0.5, 'leafScaleX': 0.20000000298023224, 'curveBack': (20.0, 80.0, 0.0, 0.0), 'bend': 0.0, 'scale0': 1.0, 'prunePowerLow': 0.0010000000474974513, 'splitAngleV': (0.0, 10.0, 20.0, 0.0), 'baseSplits': 2, 'pruneWidthPeak': 0.6000000238418579}

View File

@ -236,19 +236,19 @@ class add_mesh_bolt(Operator, AddObjectHelper):
max=MAX_INPUT_NUMBER,
description='Flat distance of the Hex Nut'
)
# generic transform props
view_align = BoolProperty(
name="Align to View",
default=False,
update=AddObjectHelper.view_align_update_callback,
)
location = FloatVectorProperty(
name="Location",
subtype='TRANSLATION',
)
rotation = FloatVectorProperty(
name="Rotation",
subtype='EULER',
@ -311,7 +311,7 @@ class add_mesh_bolt(Operator, AddObjectHelper):
col.prop(self, 'bf_Crest_Percent')
col.prop(self, 'bf_Root_Percent')
col.prop(self, 'bf_Div_Count')
# generic transform props
col.separator()
col.prop(self, 'view_align')

View File

@ -2003,7 +2003,5 @@ def Create_New_Mesh(props, context):
if is_not_mesh_valid:
print("\n[BoltFactory]\nFunction: create_mesh_object\n"
"Mesh is not Valid, correcting\n")
object_data_add(context, mesh, operator=props)

View File

@ -1,2 +1,2 @@
http://blog.michelanders.nl/search/label/erosion
https://github.com/nerk987/ErosionR
https://github.com/nerk987/ErosionR

View File

@ -4,4 +4,3 @@ try:
numexpr_available=True
except ImportError:
pass

View File

@ -19,4 +19,4 @@ TILES##|##Floor_tiles_alt6
TILES##|##Floor_alt7
TILES##|##Floor_alt8
TILES##|##Floor_alt9
TILES##|##Floor_alt10
TILES##|##Floor_alt10

View File

@ -45,4 +45,4 @@ METAL##|##Roof_metal
METAL##|##Roof_metal2
METAL##|##Roof_metal3
METAL##|##Roof_metal4
METAL##|##Roof_metal5
METAL##|##Roof_metal5

View File

@ -28,4 +28,4 @@ d.tile_alternate = False
d.hip_alt = 0.13
d.tile_bevel_segs = 2
d.tile_fit_x = False
d.valley_enable = True
d.valley_enable = True

View File

@ -28,4 +28,4 @@ d.tile_alternate = False
d.hip_alt = 0.13
d.tile_bevel_segs = 2
d.tile_fit_x = False
d.valley_enable = True
d.valley_enable = True

View File

@ -28,4 +28,4 @@ d.tile_alternate = True
d.hip_alt = 0.12
d.tile_bevel_segs = 3
d.tile_fit_x = False
d.valley_enable = True
d.valley_enable = True

View File

@ -28,4 +28,4 @@ d.tile_alternate = True
d.hip_alt = 0.13
d.tile_bevel_segs = 3
d.tile_fit_x = False
d.valley_enable = True
d.valley_enable = True

View File

@ -28,4 +28,4 @@ d.tile_alternate = True
d.hip_alt = 0.1
d.tile_bevel_segs = 3
d.tile_fit_x = False
d.valley_enable = True
d.valley_enable = True

View File

@ -28,4 +28,4 @@ d.tile_alternate = True
d.hip_alt = 0.12
d.tile_bevel_segs = 3
d.tile_fit_x = False
d.valley_enable = True
d.valley_enable = True

View File

@ -186,4 +186,3 @@ class SubprocessHelper:
self._wm_exit(context)
self._process.kill()
self.process_post(-1)

View File

@ -140,4 +140,3 @@ def is_subdir(path, directory):
if path.startswith(directory.rstrip(sep) + sep):
return True
return False

View File

@ -140,4 +140,3 @@ def is_subdir(path, directory):
if path.startswith(directory.rstrip(sep) + sep):
return True
return False

View File

@ -180,7 +180,7 @@ def make_texture_list(texturefolder):
'''
#Updating objects MESH part ( Mesh, Vertex Groups, Vertex Colors )
#Updating objects MESH part ( Mesh, Vertex Groups, Vertex Colors )
'''
def updatemesh(objekti, proxy):
@ -333,8 +333,8 @@ class SCENE_OT_opencoat(bpy.types.Operator):
file.write("\n[3B]")
file.close()
'''
If not Windows Os it will only write import.txt. Auto run 3d-coat.exe is disabled.
'''
If not Windows Os it will only write import.txt. Auto run 3d-coat.exe is disabled.
'''
else:

View File

@ -59,7 +59,7 @@ def readtexturefolder(objekti,is_new): #read textures from texture file
texcoat[tex_name].append(koko_osoite)
createnodes(objekti, texcoat)
def checkmaterial(mat_list, objekti): #check how many materials object has
mat_list = []
@ -73,7 +73,7 @@ def createnodes(objekti,texcoat): #luo nodes palikat ja linkittaa tekstuurit nii
bring_roughness = True
bring_normal = True
bring_disp = True
act_material = objekti.active_material
if(objekti.active_material.use_nodes == False):
objekti.active_material.use_nodes = True
@ -149,11 +149,11 @@ def createnodes(objekti,texcoat): #luo nodes palikat ja linkittaa tekstuurit nii
bpy.ops.object.editmode_toggle() #HACKKI joka saa tekstuurit nakymaan heti
bpy.ops.object.editmode_toggle()
def matlab(mat_list, objekti, scene,is_new):
#checkmaterial(mat_list, objekti)
readtexturefolder(objekti,is_new)
return('FINISHED')

View File

@ -282,5 +282,3 @@ def _exportItem(ctx, o, mw, drawing, settings):
e = LampDXFExporter(settings)
return e.export(ctx, drawing, o, mx, mx_n, color=ecolor, layer=elayer, lineType=eltype)

View File

@ -924,4 +924,3 @@ if __name__=='__main__':
if not copy:
Draw.PupMenu('Error%t|This script requires a full python install')
else: test()

View File

@ -119,4 +119,3 @@ class MigiusDXFLibDrawing(DxfDrawing):
elif type=='Face':
for e in ents:
drawing.append(DXF.Face(**e))

View File

@ -34,5 +34,3 @@ class DxfDrawing(object):
def convert(self, **kwargs):
""" Converts this drawing into DXF representation object """
raise NotImplementedError()

View File

@ -299,5 +299,3 @@ class DXFExporter(bpy.types.Operator):
WindowManager = context.window_manager
WindowManager.fileselect_add(self)
return {'RUNNING_MODAL'}

View File

@ -72,4 +72,3 @@ def exportInsert(ob, mx, insert_name, **common):
entities.append(dxfINSERT)
return entities

View File

@ -18,4 +18,3 @@ def exportLamp(ob, mx, mw, **common):
dxfPOINT = DXF.Point(points=[p],**common)
entities.append(dxfPOINT)
return entities

View File

@ -85,5 +85,3 @@ def exportText(ob, mx, mw, **common):
flag=textFlag,height=textHeight,justifyhor=Alignment,**common)
entities.append(dxfTEXT)
return entities

View File

@ -21,4 +21,3 @@ class ViewBorderDXFExporter(BasePrimitiveDXFExporter):
dxfPOLYFACE = DXF.PolyLine([allpoints, faces], flag70=flag70, flag75=flag70, width=0.0, paperspace=espace, color=LAYERCOLOR_DEF)
#dxfPLINE = DXF.PolyLine(points,points[0],[closed,0,0], paperspace=espace, color=LAYERCOLOR_DEF)
d.append(dxfPLINE)

View File

@ -62,4 +62,4 @@ class Drawing(object):
def resolve_text_styles(entities, text_styles):
for entity in entities:
if hasattr(entity, 'resolve_text_style'):
entity.resolve_text_style(text_styles)
entity.resolve_text_style(text_styles)

View File

@ -1261,4 +1261,3 @@ def entity_factory(tags):
entity = cls() # call constructor
list(entity.setup_attributes(tags)) # setup dxf attributes - chain of generators
return entity

View File

@ -70,4 +70,4 @@ def julian_date(date):
def calendar_date(juliandate):
return CalendarDate(juliandate).result
return CalendarDate(juliandate).result

View File

@ -87,4 +87,3 @@ class LayerTable(Table):
layer = Layer(entrytags)
layers._table_entries[layer.name] = layer
return layers

View File

@ -35,4 +35,3 @@ class LinetypeTable(Table):
style = Linetype(entry_tags)
styles._table_entries[style.name] = style
return styles

View File

@ -278,14 +278,14 @@ def split_by_width(entity):
en_template.bulge = []
en_template.width = []
en_template.tangents = []
# is_closed is an attrib only on polyline
# is_closed is an attrib only on polyline
if en_template.dxftype == 'POLYLINE':
en_template.is_closed = False
else:
# disable closed flag (0x01) when is_closed is a @property
en_template.flags ^= 1
i = 0
for pair, same_width in itertools.groupby(entity.width, key=lambda w: WidthTuple(w)):
en = deepcopy(en_template)

View File

@ -143,4 +143,4 @@ def extrusion(entity):
if entity.extrusion is None:
return False
return Vector(entity.extrusion) != Vector((0, 0, 1)) \
or (hasattr(entity, "elevation") and entity.elevation != 0)
or (hasattr(entity, "elevation") and entity.elevation != 0)

View File

@ -81,4 +81,3 @@ def export_pdb(obj_type, filepath_pdb):
pdb_file_p.close()
return True

View File

@ -1390,4 +1390,3 @@ def import_pdb(Ball_type,
# activate the last selected object
if obj:
bpy.context.scene.objects.active = obj

View File

@ -136,4 +136,3 @@ if __name__ == "__main__":
traceback.print_exc()
sys.exit(1)

View File

@ -49,7 +49,7 @@ v 0.5.61
v 0.5.6
- Create new libraries.
Libraries are read from the matlib folder. If you want to change this behaviour, edit the variable "matlib_path" at line 40. (Untested)
To delete a library delete the blend file within the matlib folder.
- Apply material to all selected objects.
@ -66,10 +66,8 @@ v 0.5.6
- Options Added:
- Force Import. False By default.
This option helps to avoid material duplicates when the same material its applied several times.
When this option is disabled the script will try to find the selected material within the working scene, instead of importing a new one from the library.
When this option is disabled the script will try to find the selected material within the working scene, instead of importing a new one from the library.
- Linked.
Import the material by making a link to the library.
- Hide search.
Shows or hides the search box.

View File

@ -111,4 +111,4 @@
"Flaky Tangelo"
]
]
]
]

View File

@ -1094,7 +1094,7 @@ def draw_edges(context, myobj, region, rv3d):
precision = scene.measureit_debug_precision
# --------------------
# edge Loop
#
#
# uses lambda for edge midpoint finder (midf) because edit mode
# edge vert coordinate is not stored in same places as in obj mode
# --------------------

View File

@ -538,7 +538,7 @@ def add_item(box, idx, segment):
row = box.row(True)
row.prop(segment, 'glarrow_a', text="")
row.prop(segment, 'glarrow_b', text="")
if segment.glarrow_a != '99' or segment.glarrow_b != '99':
if segment.glarrow_a != '99' or segment.glarrow_b != '99':
row.prop(segment, 'glarrow_s', text="Size")
if segment.gltype != 2 and segment.gltype != 10:

View File

@ -29,9 +29,9 @@ def failure_message(self):
def failure_message_on_plane(self):
msg2 = """\
Edge2Face expects the edge to intersect at one point on the plane of the selected face. You're
seeing this warning because mathutils.geometry.intersect_line_plane is being called on an edge/face
combination that has no clear intersection point ( both points of the edge either touch the same
Edge2Face expects the edge to intersect at one point on the plane of the selected face. You're
seeing this warning because mathutils.geometry.intersect_line_plane is being called on an edge/face
combination that has no clear intersection point ( both points of the edge either touch the same
plane as the face or they lie in a plane that is offset along the face's normal )"""
lines = msg2.split('\n')
for line in lines:

View File

@ -210,4 +210,3 @@ def intersect_ray_segment_fac(v0, v1, ray_direction, ray_origin):
c = n - t
cray = c.cross(ray_direction)
return cray.dot(n) / nlen

View File

@ -1193,4 +1193,3 @@ def runMaster(address, broadcast, clear, force, path, update_stats, test_break,u
clearMaster(httpd.path)
else:
saveMaster(path, httpd)

View File

@ -558,4 +558,3 @@ def get(handler):
output(link("Back to Main Page", "/html"))
output("</body></html>")

View File

@ -131,4 +131,3 @@ ITEMS = (
(Subversion.name, Subversion.name, Subversion.description),
(Git.name, Git.name, Git.description),
)

View File

@ -1,4 +1,4 @@
object_print3d_utils
====================
3d Printing Addon for Blender 2.66
3d Printing Addon for Blender 2.66

View File

@ -196,23 +196,23 @@ class OscPanelMesh(Panel):
colrow = col.row(align=1)
colrow.operator("mesh.reconst_osc", icon="UV_SYNC_SELECT")
colrow = col.row(align=1)
colrow.operator("mesh.vertex_color_mask", icon="GROUP_VCOL")
colrow.operator("mesh.vertex_color_mask", icon="GROUP_VCOL")
colrow = col.row(align=1)
colrow.operator("mesh.overlap_uv_faces", icon="UV_FACESEL")
colrow = col.row(align=1)
colrow.operator("mesh.uv_island_copy", icon="COPYDOWN")
colrow.operator("mesh.uv_island_paste", icon="PASTEDOWN")
colrow.operator("mesh.uv_island_paste", icon="PASTEDOWN")
colrow = col.row(align=1)
colrow.operator("view3d.modal_operator", icon="STICKY_UVS_DISABLE")
colrow.operator("view3d.modal_operator", icon="STICKY_UVS_DISABLE")
colrow = col.row(align=1)
colrow.operator("lattice.mirror_selected", icon="LATTICE_DATA")
colrow = col.row(align=1)
colrow.label(text="Edit Multimesh")
colrow.prop_search(scene, "multimeshedit", bpy.data, "groups", text="")
colrow.prop_search(scene, "multimeshedit", bpy.data, "groups", text="")
colrow = col.row(align=1)
colrow.operator("mesh.create_edit_multimesh", icon="IMPORT", text= "StartEdit")
colrow.operator("mesh.apply_edit_multimesh", icon="EXPORT", text="FinishEdit")
class OscPanelShapes(Panel):
bl_idname = "Oscurart Shapes Tools"

View File

@ -125,7 +125,7 @@ class collectImagesOsc(Operator):
for image in bpy.data.images:
try:
image.update()
if image.has_data:
if not os.path.exists(os.path.join(imagespath,os.path.basename(image.filepath))):
shutil.copy(image.filepath, os.path.join(imagespath,os.path.basename(image.filepath)))
@ -133,9 +133,9 @@ class collectImagesOsc(Operator):
else:
print("%s exists." % (image.name))
else:
print("%s missing path." % (image.name))
print("%s missing path." % (image.name))
except:
print("%s missing path." % (image.name))
print("%s missing path." % (image.name))
bpy.ops.file.make_paths_relative()

View File

@ -354,32 +354,32 @@ def DefOscOverlapUv(self,offset,rotate):
bm.faces.ensure_lookup_table()
faces = [face for face in bm.faces if face.select]
uv_layer = bm.loops.layers.uv[bpy.context.object.data.uv_layers.active.name]
faceDict = {}
faceReverse = []
bm.select_mode = {'FACE'}
for face in faces:
bpy.ops.mesh.select_all(action="DESELECT")
bpy.ops.mesh.select_all(action="DESELECT")
face.select = True
bpy.ops.mesh.select_mirror()
faceDict[face.index] = [mirrorface for mirrorface in bm.faces if mirrorface.select][0].index
faceReverse.append([mirrorface for mirrorface in bm.faces if mirrorface.select][0])
for selFace,mirrorFace in faceDict.items():
for loop,mirrorLoop in zip(bm.faces[selFace].loops,bm.faces[mirrorFace].loops):
mirrorLoop.copy_from(loop)
if offset:
for loop,mirrorLoop in zip(bm.faces[selFace].loops,bm.faces[mirrorFace].loops):
mirrorLoop[uv_layer].uv += Vector((1,0))
#invierto direcciones
for selFace,mirrorFace in faceDict.items():
for loop,mirrorLoop in zip(bm.faces[selFace].loops,bm.faces[mirrorFace].loops):
mirrorLoop.copy_from(loop)
if offset:
for loop,mirrorLoop in zip(bm.faces[selFace].loops,bm.faces[mirrorFace].loops):
mirrorLoop[uv_layer].uv += Vector((1,0))
#invierto direcciones
bmesh.ops.reverse_uvs(bm, faces=[f for f in faceReverse])
bmesh.ops.rotate_uvs(bm, faces=[f for f in faceReverse])
bmesh.ops.rotate_uvs(bm, faces=[f for f in faceReverse])
if rotate:
bmesh.ops.rotate_uvs(bm, faces=[f for f in faceReverse])
bmesh.ops.rotate_uvs(bm, faces=[f for f in faceReverse])
bmesh.update_edit_mesh(me)
@ -566,41 +566,41 @@ def defCopyUvsIsland(self, context):
for li in poly.loop_indices:
obLoop.append(li)
bpy.ops.object.mode_set(mode="EDIT")
bpy.ops.object.mode_set(mode="EDIT")
def defPasteUvsIsland(self, uvOffset, rotateUv,context):
bpy.ops.object.mode_set(mode="OBJECT")
selPolys = [poly.index for poly in bpy.context.object.data.polygons if poly.select]
for island in selPolys:
bpy.ops.object.mode_set(mode="EDIT")
bpy.ops.mesh.select_all(action="DESELECT")
bpy.ops.object.mode_set(mode="OBJECT")
bpy.ops.object.mode_set(mode="EDIT")
bpy.ops.mesh.select_all(action="DESELECT")
bpy.ops.object.mode_set(mode="OBJECT")
bpy.context.object.data.polygons[island].select = True
bpy.ops.object.mode_set(mode="EDIT")
bpy.ops.object.mode_set(mode="EDIT")
bpy.ops.mesh.select_linked()
bpy.ops.object.mode_set(mode="OBJECT")
bpy.ops.object.mode_set(mode="OBJECT")
TobLoop = []
TislandFaces = []
for poly in bpy.context.object.data.polygons:
if poly.select:
TislandFaces.append(poly.index)
for li in poly.loop_indices:
TobLoop.append(li)
TobLoop.append(li)
for source,target in zip(range(min(obLoop),max(obLoop)+1),range(min(TobLoop),max(TobLoop)+1)):
bpy.context.object.data.uv_layers.active.data[target].uv = bpy.context.object.data.uv_layers.active.data[source].uv + Vector((uvOffset,0))
bpy.ops.object.mode_set(mode="EDIT")
bpy.ops.object.mode_set(mode="EDIT")
if rotateUv:
bpy.ops.object.mode_set(mode="OBJECT")
bpy.ops.object.mode_set(mode="OBJECT")
for poly in selPolys:
bpy.context.object.data.polygons[poly].select = True
bpy.ops.object.mode_set(mode="EDIT")
bm = bmesh.from_edit_mesh(bpy.context.object.data)
bmesh.ops.reverse_uvs(bm, faces=[f for f in bm.faces if f.select])
bmesh.ops.rotate_uvs(bm, faces=[f for f in bm.faces if f.select])
bmesh.ops.rotate_uvs(bm, faces=[f for f in bm.faces if f.select])
#bmesh.update_edit_mesh(bpy.context.object.data, tessface=False, destructive=False)
@ -620,22 +620,22 @@ class CopyUvIsland(Operator):
def execute(self, context):
defCopyUvsIsland(self, context)
return {'FINISHED'}
class PasteUvIsland(Operator):
"""Paste Uv Island"""
bl_idname = "mesh.uv_island_paste"
bl_label = "Paste Uv Island"
bl_options = {"REGISTER", "UNDO"}
uvOffset = BoolProperty(
name="Uv Offset",
default=False
)
)
rotateUv = BoolProperty(
name="Rotate Uv Corner",
default=False
)
)
@classmethod
def poll(cls, context):
return (context.active_object is not None and
@ -644,22 +644,22 @@ class PasteUvIsland(Operator):
def execute(self, context):
defPasteUvsIsland(self, self.uvOffset, self.rotateUv, context)
return {'FINISHED'}
return {'FINISHED'}
class createEditMultimesh(Operator):
"""Create Edit Multi Mesh"""
bl_idname = "mesh.create_edit_multimesh"
bl_label = "Create edit multimesh"
bl_options = {"REGISTER", "UNDO"}
# creo el merge para editar
def execute(self,context):
def execute(self,context):
global relvert
global me
global ob
global me
global ob
temp = [[ob , [vert.co for vert in ob.data.vertices]]for ob in bpy.data.groups[bpy.context.scene.multimeshedit].objects]
vi = 0
pi = 0
@ -670,10 +670,10 @@ class createEditMultimesh(Operator):
objectMatrix = ob[0].matrix_world.copy()
for vert in ob[0].data.vertices:
vertlist.append(objectMatrix*vert.co)
for poly in ob[0].data.polygons:
for poly in ob[0].data.polygons:
polylist.append(tuple([vert+vi for vert in poly.vertices[:]]))
relvert[ob[0]] = {vert.index:vert.index+vi for vert in ob[0].data.vertices}
vi += len(ob[0].data.vertices)
vi += len(ob[0].data.vertices)
ob[0].hide = 1
me = bpy.data.meshes.new("editMesh")
ob = bpy.data.objects.new("editMesh", me)
@ -682,7 +682,7 @@ class createEditMultimesh(Operator):
bpy.ops.object.select_all(action="DESELECT")
bpy.context.scene.objects.active = ob
bpy.ops.object.mode_set(mode='EDIT', toggle=False)
return {'FINISHED'}
return {'FINISHED'}
class ApplyEditMultimesh(Operator):
@ -690,17 +690,17 @@ class ApplyEditMultimesh(Operator):
bl_idname = "mesh.apply_edit_multimesh"
bl_label = "Apply edit multimesh"
bl_options = {"REGISTER", "UNDO"}
def execute(self,context):
def execute(self,context):
bpy.ops.object.mode_set(mode='OBJECT', toggle=False)
for object,rv in relvert.items():
objectMatrix = object.matrix_world.inverted().copy()
for source, target in rv.items():
object.data.vertices[source].co = objectMatrix * me.vertices[target].co
object.hide = 0
bpy.context.scene.objects.unlink(ob)
return {'FINISHED'}
object.hide = 0
bpy.context.scene.objects.unlink(ob)
return {'FINISHED'}
# -------------------------VERTEX COLOR MASK----------------------------------
@ -719,10 +719,10 @@ class resymVertexGroups(Operator):
obj = bpy.context.active_object
mesh= obj.data
bpy.ops.object.mode_set(mode='EDIT', toggle=False)
bpy.ops.mesh.select_all(action="DESELECT")
bpy.ops.object.mode_set(mode='EDIT', toggle=False)
bpy.ops.mesh.select_all(action="DESELECT")
bm = bmesh.from_edit_mesh(mesh)
bm = bmesh.from_edit_mesh(mesh)
bm.faces.ensure_lookup_table()
islands = []
@ -730,24 +730,24 @@ class resymVertexGroups(Operator):
try:
color_layer = bm.loops.layers.color["RGBMask"]
except:
except:
color_layer = bm.loops.layers.color.new("RGBMask")
while faces:
faces[0].select_set(True)
bpy.ops.mesh.select_linked()
faces[0].select_set(True)
bpy.ops.mesh.select_linked()
islands.append([f for f in faces if f.select])
bpy.ops.mesh.hide(unselected=False)
faces = [f for f in bm.faces if not f.hide]
bpy.ops.mesh.hide(unselected=False)
faces = [f for f in bm.faces if not f.hide]
bpy.ops.mesh.reveal()
for island in islands:
color = (uniform(0,1),uniform(0,1),uniform(0,1),1)
color = (uniform(0,1),uniform(0,1),uniform(0,1),1)
for face in island:
for loop in face.loops:
loop[color_layer] = color
loop[color_layer] = color
bpy.ops.object.mode_set(mode="VERTEX_PAINT")
return {'FINISHED'}
return {'FINISHED'}

View File

@ -529,7 +529,7 @@ def DefObjectToGroups():
try:
"%s_MSH" % (os.path.basename(bpy.data.filepath).replace(".blend", ""))
scgr = bpy.data.groups["%s_MSH" % (os.path.basename(bpy.data.filepath).replace(".blend", ""))]
except:
except:
scgr = bpy.data.groups.new(
"%s_MSH" %
(os.path.basename(bpy.data.filepath).replace(".blend", "")))

View File

@ -70,7 +70,7 @@ def defRenderAll(frametype, scenes):
for i in scene.render.layers:
i.use = False
layer.use = 1
print("SCENE: %s" % scene.name)
print("LAYER: %s" % layer.name)
print("OVERRIDE: %s" % str(proptolist))
@ -84,7 +84,7 @@ def defRenderAll(frametype, scenes):
"$Camera":scene.camera.name}
scene.render.filepath = renpath.replace("$Scene",tokens["$Scene"]).replace("$File",tokens["$File"]).replace("$Layer",tokens["$Layer"]).replace("$Camera",tokens["$Camera"])
bpy.context.window.screen.scene = scene
bpy.ops.render.render(
animation=True,
@ -218,15 +218,15 @@ def defoscBatchMaker(TYPE, BIN):
SHFILE = os.path.join(
bpy.data.filepath.rpartition(SYSBAR)[0],
FILENAME + EXTSYS)
renpath = bpy.context.scene.render.filepath
renpath = bpy.context.scene.render.filepath
tokens = {
"$Scene":bpy.context.scene.name,
"$File":os.path.basename(bpy.data.filepath).split(".")[0],
"$Layer":bpy.context.scene.render.layers.active.name,
"$Camera":bpy.context.scene.camera.name}
rfp = bpy.context.scene.render.filepath.replace("$Scene",tokens["$Scene"]).replace("$File",tokens["$File"]).replace("$Layer",tokens["$Layer"]).replace("$Camera",tokens["$Camera"])
rfp = bpy.context.scene.render.filepath.replace("$Scene",tokens["$Scene"]).replace("$File",tokens["$File"]).replace("$Layer",tokens["$Layer"]).replace("$Camera",tokens["$Camera"])
with open(SHFILE, "w") as FILE:
# assign permission in linux
if EXTSYS == ".sh":
@ -509,5 +509,3 @@ class BrokenFramesPanel (Panel):
colrow.operator("object.clear_broken_file")
colrow = col.row(align=1)
colrow.operator("object.delete_broken_file")

View File

@ -7,4 +7,4 @@ lampdata = bpy.context.object.data
lampdata.color = (1.0, 1.0, 0.9843137264251709)
lampdata.energy = 1.2 #100 000lux
#lampdata.distance = 0.001
#lampdata.falloff_type = 'INVERSE_SQUARE'
#lampdata.falloff_type = 'INVERSE_SQUARE'

View File

@ -14,4 +14,3 @@ lampdata.shadow_ray_samples_x = 2
lampdata.color = (1.0, 1.0, 1.0)
lampdata.energy = 1.094316#91193 #lux
lampdata.distance =695699968

View File

@ -11,4 +11,4 @@ lampdata.spot_blend = 0.9
lampdata.color = (0.99, 0.9882352948188782, 0.998)
lampdata.energy = 223.81796 #240000lm/21.446(=lux)*0.004*2.5(distance) *2 for distance is the point of half strength
lampdata.distance = 0.001
lampdata.falloff_type = 'INVERSE_SQUARE'
lampdata.falloff_type = 'INVERSE_SQUARE'

View File

@ -11,4 +11,4 @@ lampdata.spot_blend = 0.9
lampdata.color = (0.9490196108818054, 0.9882352948188782, 1.0)
lampdata.energy = 20.98293#9000lm/21.446(=lux)*0.004*6.25(distance) *2 for distance is the point of half strength
lampdata.distance = 0.025
lampdata.falloff_type = 'INVERSE_SQUARE'
lampdata.falloff_type = 'INVERSE_SQUARE'

View File

@ -1,7 +1,7 @@
#since 1960, no longer manufactured since 2016
#8mm projectors
#used in many automobiles headlamps ; outdoor lighting systems ; watercraft ; desktop lamps (smaller power).
#theatrical and studio (film and television) fixtures, including Ellipsoidal reflector spotlights, Source Four, and Fresnels; PAR Cans
#theatrical and studio (film and television) fixtures, including Ellipsoidal reflector spotlights, Source Four, and Fresnels; PAR Cans
import bpy
bpy.context.object.data.type = 'SPOT'

View File

@ -7,4 +7,4 @@ lampdata = bpy.context.object.data
lampdata.color = (1.0, 0.8392156958580017, 0.6666666865348816)
lampdata.energy = 7.46060#3.7303#1000/21.446/(lampdistance/candledistance) #lumen values/21.446 or lux when available used as a basis
lampdata.distance = 0.05
lampdata.falloff_type = 'INVERSE_SQUARE'
lampdata.falloff_type = 'INVERSE_SQUARE'

View File

@ -7,4 +7,4 @@ lampdata = bpy.context.object.data
lampdata.color = (1.0, 0.8196078431372549, 0.6980392156862745)
lampdata.energy = 2.98424#400/21.446 #lumen values/21.446 or lux when available used as a basis
lampdata.distance = 0.05
lampdata.falloff_type = 'INVERSE_SQUARE'
lampdata.falloff_type = 'INVERSE_SQUARE'

View File

@ -11,4 +11,4 @@ lampdata.shadow_ray_samples_y = 2
lampdata.color = (1.0, 0.95686274766922, 0.9490200281143188)
lampdata.energy = 4.45304#4775lm/21.446(=lux)*0.004(distance) *2 for distance is the point of half strength 6200lm?
lampdata.distance = 1.0 #dist values multiplied by 10 for area lights for same power as bulb/spot/...
#lampdata.falloff_type = 'INVERSE_SQUARE'
#lampdata.falloff_type = 'INVERSE_SQUARE'

View File

@ -11,4 +11,4 @@ lampdata.shadow_ray_samples_y = 2
lampdata.color = (0.901, 1.0, 0.979)
lampdata.energy = 2.14492#2300lm/21.446(=lux)*0.004*2.5(distance) *2 for distance is the point of half strength
lampdata.distance = 1.0 #dist values multiplied by 10 for area lights for same power as bulb/spot/...
#lampdata.falloff_type = 'INVERSE_SQUARE'
#lampdata.falloff_type = 'INVERSE_SQUARE'

View File

@ -1,4 +1,4 @@
#since 1973
#since 1973
import bpy
bpy.context.object.data.type = 'AREA'

View File

@ -12,4 +12,4 @@ lampdata.shadow_ray_samples_y = 2
lampdata.color = (0.8313725590705872, 0.9215686321258545, 1.0)
lampdata.energy = 1.25898#1350lm/21.446(=lux)*0.004*2.5(distance) *2 for distance is the point of half strength
lampdata.distance = 1.0 #dist values multiplied by 10 for area lights for same power as bulb/spot/...
#lampdata.falloff_type = 'INVERSE_SQUARE'
#lampdata.falloff_type = 'INVERSE_SQUARE'

View File

@ -1,4 +1,4 @@
#since the 1990's,
#since the 1990's,
#Often circular or rectangular closed loop electrodeless fluorescent lamps
import bpy

View File

@ -1,8 +1,8 @@
#Starting from 1876 (first type of commercial lamps developed with electricity)
#Carbon arc lamps were being phased out after the 1910s.
#For general lighting the lamp was replaced by the 1920s and 30s in most cities.
#Carbon arc lamps were being phased out after the 1910s.
#For general lighting the lamp was replaced by the 1920s and 30s in most cities.
#The lamp continued to be used for spot lights, film production lighting and film projector lamps.
#Most of the remaining carbon arc lamps ceased production by the 1980s
#Most of the remaining carbon arc lamps ceased production by the 1980s
import bpy
bpy.context.object.data.type = 'SPOT'
@ -15,4 +15,4 @@ lampdata.spot_blend = 0.3
lampdata.color = (1.0, 0.9803921580314636, 0.95686274766922)
lampdata.energy = 51.29162#55000lm/21.446(=lux)*0.004*2.5(distance) *2 for distance is the point of half strength
lampdata.distance = 0.01
lampdata.falloff_type = 'INVERSE_SQUARE'
lampdata.falloff_type = 'INVERSE_SQUARE'

View File

@ -1,4 +1,4 @@
#Starting from 1939 (World War II Byler's tubes)
#Starting from 1939 (World War II Byler's tubes)
import bpy
bpy.context.object.data.type = 'AREA'
@ -9,4 +9,3 @@ lampdata.size_y = 1.2192
lampdata.color = (0.6549019813537598, 0.0, 1.0)
lampdata.energy = 1.86515#100/21.446 #lumen values/21.446 or lux when available used as a basis
lampdata.distance = 0.4 #dist values multiplied by 10 for area lights for same power as bulb/spot/...

View File

@ -1,4 +1,4 @@
#Starting from 1918 (World War I Wood's glass)
#Starting from 1918 (World War I Wood's glass)
import bpy
bpy.context.object.data.type = 'POINT'

View File

@ -1,4 +1,4 @@
#Starting from 1825 (stearin)
#Starting from 1825 (stearin)
import bpy
bpy.context.object.data.type = 'POINT'

View File

@ -2,14 +2,14 @@ import bpy
scene = bpy.context.scene
scene.world.use_sky_blend = True
#below multiplied by two for a better proportion Clear vs Overcast sky
#below multiplied by two for a better proportion Clear vs Overcast sky
#since Clear sky is 19807 lux vs 2000 for overcast (sun is min 32000 max 100000)
#http://www.pssurvival.com/PS/Lighting/Typical_LUX_Intensities_for_Day_and_Night-2017.pdf
#https://en.wikipedia.org/wiki/Daylight
#https://www.engineeringtoolbox.com/light-level-rooms-d_708.html
#https://www.cactus2000.de/fr/unit/masslux.shtml
#https://blendergrid.com/news/cycles-physically-correct-brightness
#researched result blue is
#researched result blue is
#Hue: 0.6
#Saturation: 0.533
#Lightness: 0.7

View File

@ -2,14 +2,14 @@ import bpy
scene = bpy.context.scene
scene.world.use_sky_blend = True
#below multiplied by two for a better proportion Clear vs Overcast sky
#below multiplied by two for a better proportion Clear vs Overcast sky
#since Clear sky is 19807 lux vs 2000 for overcast (sun is min 32000 max 100000)
#http://www.pssurvival.com/PS/Lighting/Typical_LUX_Intensities_for_Day_and_Night-2017.pdf
#https://en.wikipedia.org/wiki/Daylight
#https://www.engineeringtoolbox.com/light-level-rooms-d_708.html
#https://www.cactus2000.de/fr/unit/masslux.shtml
#https://blendergrid.com/news/cycles-physically-correct-brightness
#researched result blue is
#researched result blue is
#Hue: 0.6
#Saturation: 0.533
#Lightness: 0.7

View File

@ -3,7 +3,7 @@ scene = bpy.context.scene
scene.world.use_sky_blend = True
scene.world.horizon_color = (0.477, 0.536, 0.604)
#below divided by ten for a better proportion Clear vs Overcast sky
#below divided by ten for a better proportion Clear vs Overcast sky
#since Clear sky is 20000 lux vs 2000 up to 10000 for overcast
scene.world.zenith_color = (0.034, 0.043, 0.047)
scene.world.ambient_color = (0.0, 0.0, 0.0)

View File

@ -195,4 +195,3 @@ classes = (
RenderCopySettingsOPPreset,
RenderCopySettingsOPCopy,
)

View File

@ -43,7 +43,7 @@ else:
#import addon_utils # To use some other addons
import nodeitems_utils #for Nodes
from nodeitems_utils import NodeCategory, NodeItem #for Nodes
from bl_operators.presets import AddPresetBase
from bl_operators.presets import AddPresetBase
from bpy.types import (
AddonPreferences,
PropertyGroup,
@ -137,13 +137,13 @@ class RenderPovSettingsScene(PropertyGroup):
name="Enable Media",
description="Enable POV-Rays atmospheric media",
default=False)
media_samples = IntProperty(
name="Samples",
description="Number of samples taken from camera to first object "
"encountered along ray path for media calculation",
min=1, max=100, default=35)
media_scattering_type = EnumProperty(
name="Scattering Type",
description="Scattering model",
@ -181,14 +181,14 @@ class RenderPovSettingsScene(PropertyGroup):
"values of e (or smaller values "
"in the negative case) increase "
"the directional property of the"
" scattering.")),
" scattering.")),
default='1')
media_diffusion_scale = FloatProperty(
name="Scale", description="Scale factor of Media Diffusion Color",
precision=12, step=0.00000001, min=0.000000001, max=1.0,
default=(1.0))
media_diffusion_color = FloatVectorProperty(
name="Media Diffusion Color", description="The atmospheric media color",
precision=4, step=0.01, min=0, soft_max=1,
@ -201,13 +201,13 @@ class RenderPovSettingsScene(PropertyGroup):
"use 1/depth of media volume in meters",
precision=12, step=0.000001, min=0.000000001, max=1.0,
default=(0.00002))
media_absorption_color = FloatVectorProperty(
name="Media Absorption Color", description="The atmospheric media absorption color",
precision=4, step=0.01, min=0, soft_max=1,
default=(0.0, 0.0, 0.0),
options={'ANIMATABLE'},
subtype='COLOR')
subtype='COLOR')
media_eccentricity = FloatProperty(
name="Media Eccenticity Factor", description="Positive values lead"
@ -218,7 +218,7 @@ class RenderPovSettingsScene(PropertyGroup):
precision=2, step=0.01, min=-1.0, max=1.0,
default=(0.0),
options={'ANIMATABLE'})
baking_enable = BoolProperty(
name="Enable Baking",
description="Enable POV-Rays texture baking",
@ -1699,7 +1699,7 @@ class RenderPovSettingsObject(PropertyGroup):
default=(0.001, 0.001, 0.5),
options={'ANIMATABLE'},
subtype='XYZ')
# Importance sampling
importance_value = FloatProperty(
name="Radiosity Importance",
@ -1746,7 +1746,7 @@ class RenderPovSettingsObject(PropertyGroup):
default=(0.0, 0.0, 2.0))
unlock_parameters = BoolProperty(name="Lock",default = False)
# not in UI yet but used for sor (lathe) / prism... pov primitives
curveshape = EnumProperty(
name="Povray Shape Type",
@ -2138,7 +2138,7 @@ class RenderPovSettingsObject(PropertyGroup):
description = "",
default = 1.0)
###############################################################################
# Modifiers POV properties.
###############################################################################
@ -2150,7 +2150,7 @@ class RenderPovSettingsObject(PropertyGroup):
("CARVE", "Use the Carve Boolean Solver", ""),
("POV", "Use Pov-Ray Constructive Solid Geometry", "")),
default="BMESH")
#################Avogadro
# filename_ext = ".png"
@ -2279,7 +2279,7 @@ def register():
bpy.types.TEXT_MT_templates.append(ui.menu_func_templates)
bpy.types.RENDER_PT_povray_radiosity.prepend(ui.rad_panel_func)
bpy.types.LIGHT_PT_POV_light.prepend(ui.light_panel_func)
bpy.types.WORLD_PT_world.prepend(ui.world_panel_func)
bpy.types.WORLD_PT_world.prepend(ui.world_panel_func)
# was used for parametric objects but made the other addon unreachable on
# unregister for other tools to use created a user action call instead
#addon_utils.enable("add_mesh_extra_objects", default_set=False, persistent=True)
@ -2301,7 +2301,7 @@ def register():
def unregister():
del bpy.types.Scene.pov
del bpy.types.Material.pov
#del bpy.types.Modifier.pov
#del bpy.types.Modifier.pov
del bpy.types.Texture.pov
del bpy.types.Object.pov
del bpy.types.Camera.pov
@ -2312,7 +2312,7 @@ def unregister():
#bpy.types.TEXTURE_PT_context_texture.remove(TEXTURE_PT_povray_type)
#addon_utils.disable("add_mesh_extra_objects", default_set=False)
bpy.types.WORLD_PT_world.remove(ui.world_panel_func)
bpy.types.LIGHT_PT_POV_light.remove(ui.light_panel_func)
bpy.types.LIGHT_PT_POV_light.remove(ui.light_panel_func)
bpy.types.RENDER_PT_povray_radiosity.remove(ui.rad_panel_func)
bpy.types.TEXT_MT_templates.remove(ui.menu_func_templates)
bpy.types.TOPBAR_MT_file_import.remove(ui.menu_func_import)

View File

@ -386,4 +386,3 @@ class df3:
# + Add element access, scalar, and vector functions
# 07/13/05: 0.10 released
###############################################################################

View File

@ -1305,4 +1305,3 @@ class UpdatePreviewKey(bpy.types.Operator):
map = conf.keymaps[mapstr]
map.keymap_items.new("node.updatepreview",type='RIGHTMOUSE',value="PRESS")
return {'FINISHED'}

View File

@ -1915,4 +1915,3 @@ class ImportPOV(bpy.types.Operator, ImportHelper):
# track.up_axis = "UP_Y"
# obj.location = (0,0,0)
return {'FINISHED'}

View File

@ -664,11 +664,11 @@ def write_pov(filename, scene=None, info_callback=None):
tabWrite("fade_distance %.6f\n" % (sqrt(lamp.distance/2.0)))
tabWrite("fade_power %d\n" % 2) # Use blenders lamp quad equivalent
elif lamp.falloff_type == 'INVERSE_LINEAR':
tabWrite("fade_distance %.6f\n" % (lamp.distance / 2.0))
tabWrite("fade_distance %.6f\n" % (lamp.distance / 2.0))
tabWrite("fade_power %d\n" % 1) # Use blenders lamp linear
elif lamp.falloff_type == 'CONSTANT':
tabWrite("fade_distance %.6f\n" % (lamp.distance / 2.0))
tabWrite("fade_power %d\n" % 3)
tabWrite("fade_power %d\n" % 3)
# Use blenders lamp constant equivalent no attenuation.
# Using Custom curve for fade power 3 for now.
elif lamp.falloff_type == 'CUSTOM_CURVE':
@ -1452,10 +1452,10 @@ def write_pov(filename, scene=None, info_callback=None):
file.write('#end\n\n')
# Empty curves
if len(ob.data.splines)==0:
tabWrite("\n//dummy sphere to represent empty curve location\n")
tabWrite("\n//dummy sphere to represent empty curve location\n")
tabWrite("#declare %s =\n"%dataname)
tabWrite("sphere {<%.6g, %.6g, %.6g>,0 pigment{rgbt 1} no_image no_reflection no_radiosity photons{pass_through collect off} hollow}\n\n" % (ob.location.x, ob.location.y, ob.location.z)) # ob.name > povdataname)
# And non empty curves
tabWrite("sphere {<%.6g, %.6g, %.6g>,0 pigment{rgbt 1} no_image no_reflection no_radiosity photons{pass_through collect off} hollow}\n\n" % (ob.location.x, ob.location.y, ob.location.z)) # ob.name > povdataname)
# And non empty curves
else:
if bezier_sweep == False:
tabWrite("#declare %s =\n"%dataname)
@ -1634,15 +1634,15 @@ def write_pov(filename, scene=None, info_callback=None):
meta_elems[prefix].extend(elems)
else:
meta_elems[prefix] = elems
# empty metaball
if len(elems)==0:
tabWrite("\n//dummy sphere to represent empty meta location\n")
tabWrite("sphere {<%.6g, %.6g, %.6g>,0 pigment{rgbt 1} no_image no_reflection no_radiosity photons{pass_through collect off} hollow}\n\n" % (ob.location.x, ob.location.y, ob.location.z)) # ob.name > povdataname)
# other metaballs
else:
tabWrite("sphere {<%.6g, %.6g, %.6g>,0 pigment{rgbt 1} no_image no_reflection no_radiosity photons{pass_through collect off} hollow}\n\n" % (ob.location.x, ob.location.y, ob.location.z)) # ob.name > povdataname)
# other metaballs
else:
for mg, ob in meta_group.items():
if len(meta_elems[mg])!=0:
if len(meta_elems[mg])!=0:
tabWrite("blob{threshold %.4g // %s \n" % (ob.data.threshold, mg))
for elems in meta_elems[mg]:
elem = elems[0]
@ -1654,20 +1654,20 @@ def write_pov(filename, scene=None, info_callback=None):
tabWrite("sphere { <%.6g, %.6g, %.6g>, %.4g, %.4g " %
(loc.x, loc.y, loc.z, elem.radius, stiffness))
writeMatrix(global_matrix * elems[1].matrix_world)
tabWrite("}\n")
tabWrite("}\n")
elif elem.type == 'ELLIPSOID':
tabWrite("sphere{ <%.6g, %.6g, %.6g>,%.4g,%.4g " %
(loc.x / elem.size_x, loc.y / elem.size_y, loc.z / elem.size_z,
elem.radius, stiffness))
tabWrite("scale <%.6g, %.6g, %.6g>" % (elem.size_x, elem.size_y, elem.size_z))
writeMatrix(global_matrix * elems[1].matrix_world)
tabWrite("}\n")
tabWrite("}\n")
elif elem.type == 'CAPSULE':
tabWrite("cylinder{ <%.6g, %.6g, %.6g>,<%.6g, %.6g, %.6g>,%.4g,%.4g " %
((loc.x - elem.size_x), (loc.y), (loc.z),
(loc.x + elem.size_x), (loc.y), (loc.z),
elem.radius, stiffness))
#tabWrite("scale <%.6g, %.6g, %.6g>" % (elem.size_x, elem.size_y, elem.size_z))
#tabWrite("scale <%.6g, %.6g, %.6g>" % (elem.size_x, elem.size_y, elem.size_z))
writeMatrix(global_matrix * elems[1].matrix_world)
tabWrite("}\n")
@ -1677,18 +1677,18 @@ def write_pov(filename, scene=None, info_callback=None):
tabWrite("}\n")
tabWrite("cylinder { -y*8, +y*8,%.4g,%.4g translate<%.6g,%.6g,%.6g> scale <1,1/4,1> scale <%.6g, %.6g, %.6g>\n" % (elem.radius*2.0, stiffness/4.0, loc.x, loc.y, loc.z, elem.size_x, elem.size_y, elem.size_z))
writeMatrix(global_matrix * elems[1].matrix_world)
tabWrite("}\n")
tabWrite("}\n")
tabWrite("cylinder { -z*8, +z*8,%.4g,%.4g translate<%.6g,%.6g,%.6g> scale <1,1,1/4> scale <%.6g, %.6g, %.6g>\n" % (elem.radius*2.0, stiffness/4.0, loc.x, loc.y, loc.z, elem.size_x, elem.size_y, elem.size_z))
writeMatrix(global_matrix * elems[1].matrix_world)
tabWrite("}\n")
elif elem.type == 'PLANE':
tabWrite("cylinder { -x*8, +x*8,%.4g,%.4g translate<%.6g,%.6g,%.6g> scale <1/4,1,1> scale <%.6g, %.6g, %.6g>\n" % (elem.radius*2.0, stiffness/4.0, loc.x, loc.y, loc.z, elem.size_x, elem.size_y, elem.size_z))
writeMatrix(global_matrix * elems[1].matrix_world)
tabWrite("}\n")
tabWrite("cylinder { -y*8, +y*8,%.4g,%.4g translate<%.6g,%.6g,%.6g> scale <1,1/4,1> scale <%.6g, %.6g, %.6g>\n" % (elem.radius*2.0, stiffness/4.0, loc.x, loc.y, loc.z, elem.size_x, elem.size_y, elem.size_z))
writeMatrix(global_matrix * elems[1].matrix_world)
tabWrite("}\n")
tabWrite("}\n")
try:
material = elems[1].data.materials[0] # lame! - blender cant do enything else.
@ -1709,12 +1709,12 @@ def write_pov(filename, scene=None, info_callback=None):
tabWrite("finish{%s} " % safety(material_finish, Level=2))
else:
tabWrite("pigment{srgb 1} finish{%s} " % (safety(DEF_MAT_NAME, Level=2)))
writeObjectMaterial(material, ob)
#writeObjectMaterial(material, elems[1])
tabWrite("radiosity{importance %3g}\n" % ob.pov.importance_value)
tabWrite("}\n\n") # End of Metaball block
tabWrite("}\n\n") # End of Metaball block
'''
@ -2697,7 +2697,7 @@ def write_pov(filename, scene=None, info_callback=None):
if not me or not me_faces:
tabWrite("\n//dummy sphere to represent empty mesh location\n")
tabWrite("#declare %s =sphere {<0, 0, 0>,0 pigment{rgbt 1} no_image no_reflection no_radiosity photons{pass_through collect off} hollow}\n" % povdataname)
tabWrite("#declare %s =sphere {<0, 0, 0>,0 pigment{rgbt 1} no_image no_reflection no_radiosity photons{pass_through collect off} hollow}\n" % povdataname)
continue
uv_textures = me.tessface_uv_textures
@ -2989,7 +2989,7 @@ def write_pov(filename, scene=None, info_callback=None):
file.write("\n")
tabWrite("}\n")
#XXX BOOLEAN
onceCSG = 0
for mod in ob.modifiers:
@ -3002,7 +3002,7 @@ def write_pov(filename, scene=None, info_callback=None):
ob.pov.inside_vector[1],
ob.pov.inside_vector[2]))
onceCSG = 1
if me.materials:
try:
material = me.materials[0] # dodgy
@ -3010,9 +3010,9 @@ def write_pov(filename, scene=None, info_callback=None):
except IndexError:
print(me)
# POV object modifiers such as
# POV object modifiers such as
# hollow / sturm / double_illuminate etc.
write_object_modifiers(scene,ob,file)
write_object_modifiers(scene,ob,file)
#Importance for radiosity sampling added here:
tabWrite("radiosity { \n")
@ -3245,7 +3245,7 @@ def write_pov(filename, scene=None, info_callback=None):
file.write("\n")
tabWrite("}\n")
#XXX BOOLEAN
onceCSG = 0
for mod in ob.modifiers:
@ -3266,10 +3266,10 @@ def write_pov(filename, scene=None, info_callback=None):
except IndexError:
print(me)
# POV object modifiers such as
# POV object modifiers such as
# hollow / sturm / double_illuminate etc.
write_object_modifiers(scene,ob,file)
write_object_modifiers(scene,ob,file)
#Importance for radiosity sampling added here:
tabWrite("radiosity { \n")
tabWrite("importance %3g \n" % importance)
@ -3484,7 +3484,7 @@ def write_pov(filename, scene=None, info_callback=None):
elif mist.falloff=='QUADRATIC': # n**2 or squrt(n)?
tabWrite("distance %.6f\n" % ((mist.start+mist.depth)**2*0.368))
elif mist.falloff=='INVERSE_QUADRATIC': # n**2 or squrt(n)?
tabWrite("distance %.6f\n" % ((mist.start+mist.depth)**2*0.368))
tabWrite("distance %.6f\n" % ((mist.start+mist.depth)**2*0.368))
tabWrite("color rgbt<%.3g, %.3g, %.3g, %.3g>\n" % \
(*world.horizon_color, 1.0 - mist.intensity))
#tabWrite("fog_offset %.6f\n" % mist.start) #create a pov property to prepend
@ -3497,15 +3497,15 @@ def write_pov(filename, scene=None, info_callback=None):
tabWrite("media {\n")
tabWrite("scattering { %d, rgb %.12f*<%.4g, %.4g, %.4g>\n" % \
(int(scene.pov.media_scattering_type),
(scene.pov.media_diffusion_scale),
(scene.pov.media_diffusion_scale),
*(scene.pov.media_diffusion_color[:])))
if scene.pov.media_scattering_type == '5':
tabWrite("eccentricity %.3g\n" % scene.pov.media_eccentricity)
tabWrite("}\n")
tabWrite("eccentricity %.3g\n" % scene.pov.media_eccentricity)
tabWrite("}\n")
tabWrite("absorption %.12f*<%.4g, %.4g, %.4g>\n" % \
(scene.pov.media_absorption_scale,
*(scene.pov.media_absorption_color[:])))
tabWrite("\n")
*(scene.pov.media_absorption_color[:])))
tabWrite("\n")
tabWrite("samples %.d\n" % scene.pov.media_samples)
tabWrite("}\n")
@ -3591,7 +3591,7 @@ def write_pov(filename, scene=None, info_callback=None):
if scene.pov.photon_map_file_save_load in {'load'}:
fullFileName = bpy.path.abspath(scene.pov.photon_map_file)
if os.path.exists(fullFileName):
tabWrite('load_file "%s"\n'%fullFileName)
tabWrite('load_file "%s"\n'%fullFileName)
tabWrite("}\n")
oncePhotons = 0
@ -3975,7 +3975,7 @@ class PovrayRender(bpy.types.RenderEngine):
x = int(r.resolution_x * r.resolution_percentage * 0.01)
y = int(r.resolution_y * r.resolution_percentage * 0.01)
print("***INITIALIZING***")
# This makes some tests on the render, returning True if all goes good, and False if
# it was finished one way or the other.
# It also pauses the script (time.sleep())
@ -4000,7 +4000,7 @@ class PovrayRender(bpy.types.RenderEngine):
return False
return True
if scene.pov.text_block !="":
if scene.pov.tempfiles_enable:
self._temp_file_in = tempfile.NamedTemporaryFile(suffix=".pov", delete=False).name
@ -4022,28 +4022,28 @@ class PovrayRender(bpy.types.RenderEngine):
os.remove(self._temp_file_in) # so as not to load the old file
except OSError:
pass
'''
'''
print(scene.pov.text_block)
text = bpy.data.texts[scene.pov.text_block]
file=open("%s"%self._temp_file_in,"w")
# Why are the newlines needed?
file.write("\n")
file.write(text.as_string())
file.write("\n")
file.write("\n")
file.close()
# has to be called to update the frame on exporting animations
scene.frame_set(scene.frame_current)
pov_binary = PovrayRender._locate_binary()
if not pov_binary:
print("POV-Ray 3.7: could not execute povray, possibly POV-Ray isn't installed")
return False
# start ini UI options export
self.update_stats("", "POV-Ray 3.7: Exporting ini options from Blender")
self.update_stats("", "POV-Ray 3.7: Exporting ini options from Blender")
write_pov_ini(scene, self._temp_file_ini, self._temp_file_log, self._temp_file_in, self._temp_file_out)
@ -4085,21 +4085,21 @@ class PovrayRender(bpy.types.RenderEngine):
print("Engine ready!...")
print("Command line arguments passed: " + str(extra_args))
#return True
self.update_stats("", "POV-Ray 3.7: Parsing File")
self.update_stats("", "POV-Ray 3.7: Parsing File")
# Indented in main function now so repeated here but still not working
# Indented in main function now so repeated here but still not working
# to bring back render result to its buffer
if os.path.exists(self._temp_file_out):
xmin = int(r.border_min_x * x)
ymin = int(r.border_min_y * y)
xmax = int(r.border_max_x * x)
ymax = int(r.border_max_y * y)
result = self.begin_result(0, 0, x, y)
result = self.begin_result(0, 0, x, y)
lay = result.layers[0]
time.sleep(self.DELAY)
try:
lay.load_from_file(self._temp_file_out)
@ -4108,12 +4108,12 @@ class PovrayRender(bpy.types.RenderEngine):
self.end_result(result)
#print(self._temp_file_log) #bring the pov log to blender console with proper path?
with open(self._temp_file_log) as f: # The with keyword automatically closes the file when you are done
print(f.read())
print(f.read())
self.update_stats("", "")
if scene.pov.tempfiles_enable or scene.pov.deletefiles_enable:
self._cleanup()
self._cleanup()
else:
##WIP output format
@ -4458,12 +4458,12 @@ class RunPovTextRender(Operator):
bl_label = "Run"
bl_context = "text"
bl_description = "Run a render with this text only"
def execute(self, context):
scene = context.scene
scene.pov.text_block = context.space_data.text.name
bpy.ops.render.render()
#empty text name property engain

View File

@ -57,27 +57,27 @@ class AddPresetWorld(AddPresetBase, bpy.types.Operator):
# variable used for all preset values
preset_defines = [
"scene = bpy.context.scene"
"scene = bpy.context.scene"
]
# properties to store in the preset
preset_values = [
"scene.world.use_sky_blend",
"scene.world.horizon_color",
"scene.world.zenith_color",
"scene.world.zenith_color",
"scene.world.ambient_color",
"scene.world.mist_settings.use_mist",
"scene.world.mist_settings.intensity",
"scene.world.mist_settings.depth",
"scene.world.mist_settings.depth",
"scene.world.mist_settings.start",
"scene.pov.media_enable",
"scene.pov.media_scattering_type",
"scene.pov.media_scattering_type",
"scene.pov.media_samples",
"scene.pov.media_diffusion_scale",
"scene.pov.media_diffusion_color",
"scene.pov.media_absorption_scale",
"scene.pov.media_absorption_color",
"scene.pov.media_eccentricity",
"scene.pov.media_eccentricity",
]
# where to store the preset
@ -96,7 +96,7 @@ def world_panel_func(self, context):
classes = (
POV_WORLD_MT_presets,
AddPresetWorld,
)
)
# Example of wrapping every class 'as is'
from bl_ui import properties_texture
@ -527,7 +527,7 @@ class AddPresetLamp(AddPresetBase, bpy.types.Operator):
# properties to store in the preset
preset_values = [
"lightdata.type",
"lightdata.color",
"lightdata.color",
]
# where to store the preset
@ -550,8 +550,8 @@ def light_panel_func(self, context):
classes = (
POV_LIGHT_MT_presets,
AddPresetLamp,
)
)
class LIGHT_PT_POV_sunsky(PovLampButtonsPanel, bpy.types.Panel):
bl_label = properties_data_light.DATA_PT_sunsky.bl_label
@ -708,10 +708,10 @@ class RENDER_PT_povray_render_settings(RenderButtonsPanel, bpy.types.Panel):
scene = context.scene
#layout.active = (scene.pov.max_trace_level != 0)
if sys.platform[:3] != "win":
layout.prop(scene.pov, "sdl_window_enable", text="POV-Ray SDL Window")
col = layout.column()
col.label(text="Global Settings:")
@ -889,9 +889,9 @@ class RENDER_PT_povray_radiosity(RenderButtonsPanel, bpy.types.Panel):
col.prop(scene.pov, "radio_subsurface")
class POV_RADIOSITY_MT_presets(bpy.types.Menu):
bl_label = "Radiosity Presets"
preset_subdir = "pov/radiosity"
@ -912,7 +912,7 @@ class AddPresetRadiosity(AddPresetBase, bpy.types.Operator):
# properties to store in the preset
preset_values = [
"scene.pov.radio_display_advanced",
"scene.pov.radio_display_advanced",
"scene.pov.radio_adc_bailout",
"scene.pov.radio_always_sample",
"scene.pov.radio_brightness",
@ -928,7 +928,7 @@ class AddPresetRadiosity(AddPresetBase, bpy.types.Operator):
"scene.pov.radio_normal",
"scene.pov.radio_recursion_limit",
"scene.pov.radio_pretrace_start",
"scene.pov.radio_pretrace_end",
"scene.pov.radio_pretrace_end",
]
# where to store the preset
@ -952,8 +952,8 @@ classes = (
POV_RADIOSITY_MT_presets,
AddPresetRadiosity,
)
class RENDER_PT_povray_media(WorldButtonsPanel, bpy.types.Panel):
bl_label = "Atmosphere Media"
COMPAT_ENGINES = {'POVRAY_RENDER'}
@ -974,14 +974,14 @@ class RENDER_PT_povray_media(WorldButtonsPanel, bpy.types.Panel):
col.prop(scene.pov, "media_scattering_type", text="")
col = layout.column()
col.prop(scene.pov, "media_samples", text="Samples")
split = layout.split()
split = layout.split()
col = split.column(align=True)
col.label(text="Scattering:")
col.prop(scene.pov, "media_diffusion_scale")
col.prop(scene.pov, "media_diffusion_color", text="")
col = split.column(align=True)
col.label(text="Absorption:")
col.prop(scene.pov, "media_absorption_scale")
col.prop(scene.pov, "media_absorption_scale")
col.prop(scene.pov, "media_absorption_color", text="")
if scene.pov.media_scattering_type == '5':
col = layout.column()
@ -1026,12 +1026,12 @@ class MODIFIERS_PT_povray_modifiers(ModifierButtonsPanel, bpy.types.Panel):
col.prop(ob.pov, "boolean_mod")
onceCSG = 1
if ob.pov.boolean_mod == "POV":
if ob.pov.boolean_mod == "POV":
split = layout.split()
col = layout.column()
# Inside Vector for CSG
col.prop(ob.pov, "inside_vector")
class MATERIAL_PT_povray_activate_node(MaterialButtonsPanel, bpy.types.Panel):
bl_label = "Activate Node Settings"
@ -1514,7 +1514,7 @@ class TEXTURE_PT_povray_tex_gamma(TextureButtonsPanel, bpy.types.Panel):
class OBJECT_PT_povray_obj_parameters(ObjectButtonsPanel, bpy.types.Panel):
bl_label = "POV-Ray"
COMPAT_ENGINES = {'POVRAY_RENDER'}
@classmethod
def poll(cls, context):
@ -1536,14 +1536,14 @@ class OBJECT_PT_povray_obj_parameters(ObjectButtonsPanel, bpy.types.Panel):
col.prop(obj.pov, "collect_photons", text="Receive Photon Caustics")
if obj.pov.collect_photons:
col.prop(obj.pov, "spacing_multiplier", text="Photons Spacing Multiplier")
split = layout.split()
col = split.column()
col.prop(obj.pov,"hollow")
col.prop(obj.pov,"double_illuminate")
if obj.type == 'META' or obj.pov.curveshape == 'lathe':
#if obj.pov.curveshape == 'sor'
col.prop(obj.pov,"sturm")
@ -2114,7 +2114,7 @@ class TEXT_PT_povray_custom_code(TextButtonsPanel, bpy.types.Panel):
layout = self.layout
text = context.space_data.text
pov_documents = locate_docpath()
if not pov_documents :
layout.label(text="Please configure ", icon="INFO")
@ -2136,7 +2136,7 @@ class TEXT_PT_povray_custom_code(TextButtonsPanel, bpy.types.Panel):
row = box.row()
row.prop(text.pov, "custom_code",expand = True)
if text.pov.custom_code in {'3dview'}:
box.operator("render.render", icon='OUTLINER_DATA_POSE')
box.operator("render.render", icon='OUTLINER_DATA_POSE')
if text.pov.custom_code in {'text'}:
rtext = bpy.context.space_data.text
box.operator("text.run", icon='POSE_DATA')
@ -2145,7 +2145,7 @@ class TEXT_PT_povray_custom_code(TextButtonsPanel, bpy.types.Panel):
box.operator("render.render", icon='POSE_HLT')
layout.label(text="Please specify declared", icon="INFO")
layout.label(text="items in properties ")
#layout.label(text="")
#layout.label(text="")
layout.label(text="replacement fields")

View File

@ -479,4 +479,4 @@ def isPitchipoy(metarig):
words = pb.rigify_type.partition('.')
if words[0] == 'pitchipoy':
return True
return False
return False

View File

@ -2717,4 +2717,4 @@ def create(obj):
arm.layers = [(x in [0, 3, 5, 7, 10, 13, 16]) for x in range(32)]
if __name__ == "__main__":
create(bpy.context.active_object)
create(bpy.context.active_object)

View File

@ -2397,4 +2397,3 @@ def create_square_widget(rig, bone_name, size=1.0, bone_transform_name=None):
return obj
else:
return None

View File

@ -407,8 +407,3 @@ def create_sample(obj):
bone.select_head = True
bone.select_tail = True
arm.edit_bones.active = bone

View File

@ -160,5 +160,3 @@ def create_ballsocket_widget(rig, bone_name, size=1.0, bone_transform_name=None)
return obj
else:
return None

View File

@ -1493,4 +1493,4 @@ def create(obj):
arm.layers = [(x in [0, 3, 7, 10, 13, 16, 21, 24]) for x in range(32)]
if __name__ == "__main__":
create(bpy.context.active_object)
create(bpy.context.active_object)

View File

@ -2976,4 +2976,4 @@ def create(obj):
arm.layers = [(x in [0, 3, 5, 7, 10, 13, 16, 19]) for x in range(32)]
if __name__ == "__main__":
create(bpy.context.active_object)
create(bpy.context.active_object)

View File

@ -1369,4 +1369,4 @@ def create(obj):
arm.layers = [(x in [0, 3, 4, 7, 10, 13, 16, 19, 21]) for x in range(32)]
if __name__ == "__main__":
create(bpy.context.active_object)
create(bpy.context.active_object)

View File

@ -791,4 +791,4 @@ def create(obj):
arm.layers = [(x in [0, 3, 5, 6, 8, 10]) for x in range(32)]
if __name__ == "__main__":
create(bpy.context.active_object)
create(bpy.context.active_object)

View File

@ -3224,4 +3224,4 @@ def create(obj):
arm.layers = [(x in [0, 3, 4, 5, 7, 10, 13, 16, 19]) for x in range(32)]
if __name__ == "__main__":
create(bpy.context.active_object)
create(bpy.context.active_object)

View File

@ -681,4 +681,4 @@ def create(obj):
arm.layers = [(x in [3, 7, 10, 13, 16]) for x in range(32)]
if __name__ == "__main__":
create(bpy.context.active_object)
create(bpy.context.active_object)

View File

@ -816,4 +816,4 @@ def create(obj):
arm.layers = [(x in [3, 4, 7, 10, 13, 16, 19]) for x in range(32)]
if __name__ == "__main__":
create(bpy.context.active_object)
create(bpy.context.active_object)

View File

@ -2715,4 +2715,4 @@ def create(obj):
arm.layers = [(x in [0, 3, 5, 7, 10, 13, 16]) for x in range(32)]
if __name__ == "__main__":
create(bpy.context.active_object)
create(bpy.context.active_object)

View File

@ -1425,4 +1425,4 @@ def create_sample(obj):
bone.select_tail = True
arm.edit_bones.active = bone
arm.layers = [(x in [0]) for x in range(32)]
arm.layers = [(x in [0]) for x in range(32)]

Some files were not shown because too many files have changed in this diff Show More