Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaurice Raybaud <mauriceraybaud@hotmail.fr>2019-12-08 23:41:58 +0300
committerMaurice Raybaud <mauriceraybaud@hotmail.fr>2019-12-20 12:45:08 +0300
commit56dfa8c8b4395e2af66c10d43812d66ed1fb6162 (patch)
treeb4f57dcec99aaf40318b0759b16fec0609ac68af /render_povray
parentf0e3ea24be216bd98e8f2b75d722565a68461fb8 (diff)
POV: added doc strings
Hoping it will help the code to be less repulsive to new developers.
Diffstat (limited to 'render_povray')
-rw-r--r--render_povray/__init__.py4730
-rw-r--r--render_povray/primitives.py6
-rw-r--r--render_povray/render.py26
-rw-r--r--render_povray/shading.py24
-rw-r--r--render_povray/ui.py130
-rw-r--r--render_povray/update_files.py2
6 files changed, 2840 insertions, 2078 deletions
diff --git a/render_povray/__init__.py b/render_povray/__init__.py
index f343db66..66d42104 100644
--- a/render_povray/__init__.py
+++ b/render_povray/__init__.py
@@ -21,42 +21,42 @@
"""Import, export and render to POV engines.
These engines can be POV-Ray or Uberpov but others too, since POV is a
-Scene Description Language. The script has been split in as few files
+Scene Description Language. The script has been split in as few files
as possible :
___init__.py :
Initialize variables
-
+
update_files.py
- Update new variables to values from older API. This file needs an update.
-
+ Update new variables to values from older API. This file needs an update.
+
ui.py :
Provide property buttons for the user to set up the variables.
-
+
primitives.py :
Display some POV native primitives in 3D view for input and output.
shading.py
- Translate shading properties to declared textures at the top of a pov file
+ Translate shading properties to declared textures at the top of a pov file
nodes.py
Translate node trees to the pov file
-
+
df3.py
Render smoke to *.df3 files
-
+
render.py :
Translate geometry and UI properties (Blender and POV native) to the POV file
-
+
Along these essential files also coexist a few additional libraries to help make
Blender stand up to other POV IDEs such as povwin or QTPOV.
presets :
Material (sss)
- apple.py ; chicken.py ; cream.py ; Ketchup.py ; marble.py ;
+ apple.py ; chicken.py ; cream.py ; Ketchup.py ; marble.py ;
potato.py ; skim_milk.py ; skin1.py ; skin2.py ; whole_milk.py
Radiosity
- 01_Debug.py ; 02_Fast.py ; 03_Normal.py ; 04_Two_Bounces.py ;
+ 01_Debug.py ; 02_Fast.py ; 03_Normal.py ; 04_Two_Bounces.py ;
05_Final.py ; 06_Outdoor_Low_Quality.py ; 07_Outdoor_High_Quality.py ;
08_Outdoor(Sun)Light.py ; 09_Indoor_Low_Quality.py ;
10_Indoor_High_Quality.py ;
@@ -73,13 +73,13 @@ Blender stand up to other POV IDEs such as povwin or QTPOV.
10_(4300K)_40W_Vintage_Fluorescent_T12.py ;
11_(5000K)_18W_Standard_Fluorescent_T8 ;
12_(4200K)_18W_Cool_White_Fluorescent_T8.py ;
- 13_(3000K)_18W_Warm_Fluorescent_T8.py ;
+ 13_(3000K)_18W_Warm_Fluorescent_T8.py ;
14_(6500K)_54W_Grow_Light_Fluorescent_T5-HO.py ;
15_(3200K)_40W_Induction_Fluorescent.py ;
16_(2100K)_150W_High_Pressure_Sodium.py ;
17_(1700K)_135W_Low_Pressure_Sodium.py ;
18_(6800K)_175W_Mercury_Vapor.py ; 19_(5200K)_700W_Carbon_Arc.py ;
- 20_(6500K)_15W_LED_Spot.py ; 21_(2700K)_7W_OLED_Panel.py ;
+ 20_(6500K)_15W_LED_Spot.py ; 21_(2700K)_7W_OLED_Panel.py ;
22_(30000K)_40W_Black_Light_Fluorescent.py ;
23_(30000K)_40W_Black_Light_Bulb.py; 24_(1850K)_Candle.py
templates:
@@ -93,22 +93,22 @@ Blender stand up to other POV IDEs such as povwin or QTPOV.
bl_info = {
"name": "Persistence of Vision",
"author": "Campbell Barton, "
- "Maurice Raybaud, "
- "Leonid Desyatkov, "
- "Bastien Montagne, "
- "Constantin Rahn, "
- "Silvio Falcinelli",
+ "Maurice Raybaud, "
+ "Leonid Desyatkov, "
+ "Bastien Montagne, "
+ "Constantin Rahn, "
+ "Silvio Falcinelli",
"version": (0, 1, 0),
"blender": (2, 81, 0),
"location": "Render Properties > Render Engine > Persistence of Vision",
"description": "Persistence of Vision integration for blender",
- "wiki_url": "https://docs.blender.org/manual/en/dev/addons/"
- "render/povray.html",
+ "wiki_url": "https://docs.blender.org/manual/en/dev/addons/render/povray.html",
"category": "Render",
}
if "bpy" in locals():
import importlib
+
importlib.reload(ui)
importlib.reload(render)
importlib.reload(shading)
@@ -117,36 +117,30 @@ if "bpy" in locals():
else:
import bpy
from bpy.utils import register_class, unregister_class
- #import addon_utils # To use some other addons
- import nodeitems_utils #for Nodes
- from nodeitems_utils import NodeCategory, NodeItem #for Nodes
+ # 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 bpy.types import (
- AddonPreferences,
- PropertyGroup,
- #Operator,
- )
+ from bpy.types import AddonPreferences, PropertyGroup
from bpy.props import (
- StringProperty,
- BoolProperty,
- IntProperty,
- FloatProperty,
- FloatVectorProperty,
- EnumProperty,
- PointerProperty,
- CollectionProperty,
- )
- from . import (
- ui,
- render,
- update_files,
- )
+ StringProperty,
+ BoolProperty,
+ IntProperty,
+ FloatProperty,
+ FloatVectorProperty,
+ EnumProperty,
+ PointerProperty,
+ CollectionProperty,
+ )
+ from . import ui, render, update_files
+
def string_strip_hyphen(name):
"""Remove hyphen characters from a string to avoid POV errors."""
return name.replace("-", "")
-def active_texture_name_from_uilist(self,context):
+
+def active_texture_name_from_uilist(self, context):
mat = context.scene.view_layers["View Layer"].objects.active.active_material
index = mat.pov.active_texture_index
name = mat.pov_texture_slots[index].name
@@ -156,7 +150,7 @@ def active_texture_name_from_uilist(self,context):
mat.pov_texture_slots[index].name = newname
-def active_texture_name_from_search(self,context):
+def active_texture_name_from_search(self, context):
mat = context.scene.view_layers["View Layer"].objects.active.active_material
index = mat.pov.active_texture_index
name = mat.pov_texture_slots[index].texture_search
@@ -167,1373 +161,1734 @@ def active_texture_name_from_search(self,context):
except:
pass
+
###############################################################################
# Scene POV properties.
###############################################################################
class RenderPovSettingsScene(PropertyGroup):
"""Declare scene level properties controllable in UI and translated to POV."""
- #Linux SDL-window enable
+
+ # Linux SDL-window enable
sdl_window_enable: BoolProperty(
- name="Enable SDL window",
- description="Enable the SDL window in Linux OS",
- default=True)
+ name="Enable SDL window",
+ description="Enable the SDL window in Linux OS",
+ default=True,
+ )
# File Options
text_block: StringProperty(
- name="Text Scene Name",
- description="Name of POV scene to use. "
- "Set when clicking Run to render current text only",
- maxlen=1024)
+ name="Text Scene Name",
+ description="Name of POV scene to use. "
+ "Set when clicking Run to render current text only",
+ maxlen=1024,
+ )
tempfiles_enable: BoolProperty(
- name="Enable Tempfiles",
- description="Enable the OS-Tempfiles. Otherwise set the path where"
- " to save the files",
- default=True)
+ name="Enable Tempfiles",
+ description="Enable the OS-Tempfiles. Otherwise set the path where"
+ " to save the files",
+ default=True,
+ )
pov_editor: BoolProperty(
- name="POV editor",
- description="Don't Close POV editor after rendering (Overridden"
- " by /EXIT command)",
- default=False)
+ name="POV editor",
+ description="Don't Close POV editor after rendering (Overridden"
+ " by /EXIT command)",
+ default=False,
+ )
deletefiles_enable: BoolProperty(
- name="Delete files",
- description="Delete files after rendering. "
- "Doesn't work with the image",
- default=True)
+ name="Delete files",
+ description="Delete files after rendering. "
+ "Doesn't work with the image",
+ default=True,
+ )
scene_name: StringProperty(
- name="Scene Name",
- description="Name of POV scene to create. Empty name will use "
- "the name of the blend file",
- maxlen=1024)
+ name="Scene Name",
+ description="Name of POV scene to create. Empty name will use "
+ "the name of the blend file",
+ maxlen=1024,
+ )
scene_path: StringProperty(
- name="Export scene path",
- # Bug in POV-Ray RC3
- # description="Path to directory where the exported scene "
- # "(POV and INI) is created",
- description="Path to directory where the files are created",
- maxlen=1024, subtype="DIR_PATH")
+ name="Export scene path",
+ # Bug in POV-Ray RC3
+ # description="Path to directory where the exported scene "
+ # "(POV and INI) is created",
+ description="Path to directory where the files are created",
+ maxlen=1024,
+ subtype="DIR_PATH",
+ )
renderimage_path: StringProperty(
- name="Rendered image path",
- description="Full path to directory where the rendered image is "
- "saved",
- maxlen=1024, subtype="DIR_PATH")
+ name="Rendered image path",
+ description="Full path to directory where the rendered image is "
+ "saved",
+ maxlen=1024,
+ subtype="DIR_PATH",
+ )
list_lf_enable: BoolProperty(
- name="LF in lists",
- description="Enable line breaks in lists (vectors and indices). "
- "Disabled: lists are exported in one line",
- default=True)
+ name="LF in lists",
+ description="Enable line breaks in lists (vectors and indices). "
+ "Disabled: lists are exported in one line",
+ default=True,
+ )
# Not a real pov option, just to know if we should write
radio_enable: BoolProperty(
- name="Enable Radiosity",
- description="Enable POV radiosity calculation",
- default=True)
+ name="Enable Radiosity",
+ description="Enable POV radiosity calculation",
+ default=True,
+ )
radio_display_advanced: BoolProperty(
- name="Advanced Options",
- description="Show advanced options",
- default=False)
+ name="Advanced Options",
+ description="Show advanced options",
+ default=False,
+ )
media_enable: BoolProperty(
- name="Enable Media",
- description="Enable POV atmospheric media",
- default=False)
+ name="Enable Media",
+ description="Enable POV 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)
+ 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",
- items=(('1', "1 Isotropic", "The simplest form of scattering because"
- " it is independent of direction."),
- ('2', "2 Mie haze ", "For relatively small particles such as "
- "minuscule water droplets of fog, cloud "
- "particles, and particles responsible "
- "for the polluted sky. In this model the"
- " scattering is extremely directional in"
- " the forward direction i.e. the amount "
- "of scattered light is largest when the "
- "incident light is anti-parallel to the "
- "viewing direction (the light goes "
- "directly to the viewer). It is smallest"
- " when the incident light is parallel to"
- " the viewing direction. "),
- ('3', "3 Mie murky", "Like haze but much more directional"),
- ('4', "4 Rayleigh", "For extremely small particles such as "
- "molecules of the air. The amount of "
- "scattered light depends on the incident"
- " light angle. It is largest when the "
- "incident light is parallel or "
- "anti-parallel to the viewing direction "
- "and smallest when the incident light is "
- "perpendicular to viewing direction."),
- ('5', "5 Henyey-Greenstein", "The default eccentricity value "
- "of zero defines isotropic "
- "scattering while positive "
- "values lead to scattering in "
- "the direction of the light and "
- "negative values lead to "
- "scattering in the opposite "
- "direction of the light. Larger "
- "values of e (or smaller values "
- "in the negative case) increase "
- "the directional property of the"
- " scattering.")),
- default='1')
+ name="Scattering Type",
+ description="Scattering model",
+ items=(
+ (
+ '1',
+ "1 Isotropic",
+ "The simplest form of scattering because"
+ " it is independent of direction."
+ ),
+ (
+ '2',
+ "2 Mie haze ",
+ "For relatively small particles such as "
+ "minuscule water droplets of fog, cloud "
+ "particles, and particles responsible "
+ "for the polluted sky. In this model the"
+ " scattering is extremely directional in"
+ " the forward direction i.e. the amount "
+ "of scattered light is largest when the "
+ "incident light is anti-parallel to the "
+ "viewing direction (the light goes "
+ "directly to the viewer). It is smallest"
+ " when the incident light is parallel to"
+ " the viewing direction. "
+ ),
+ (
+ '3',
+ "3 Mie murky",
+ "Like haze but much more directional"
+ ),
+ (
+ '4',
+ "4 Rayleigh",
+ "For extremely small particles such as "
+ "molecules of the air. The amount of "
+ "scattered light depends on the incident"
+ " light angle. It is largest when the "
+ "incident light is parallel or "
+ "anti-parallel to the viewing direction "
+ "and smallest when the incident light is "
+ "perpendicular to viewing direction."
+ ),
+ (
+ '5',
+ "5 Henyey-Greenstein",
+ "The default eccentricity value "
+ "of zero defines isotropic "
+ "scattering while positive "
+ "values lead to scattering in "
+ "the direction of the light and "
+ "negative values lead to "
+ "scattering in the opposite "
+ "direction of the light. Larger "
+ "values of e (or smaller values "
+ "in the negative case) increase "
+ "the directional property of the"
+ " 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))
+ 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,
- default=(0.001, 0.001, 0.001),
- options={'ANIMATABLE'},
- subtype='COLOR')
+ name="Media Diffusion Color",
+ description="The atmospheric media color",
+ precision=4, step=0.01, min=0, soft_max=1,
+ default=(0.001, 0.001, 0.001),
+ options={'ANIMATABLE'},
+ subtype='COLOR',
+ )
media_absorption_scale: FloatProperty(
- name="Scale", description="Scale factor of Media Absorption Color. "
- "use 1/depth of media volume in meters",
- precision=12, step=0.000001, min=0.000000001, max=1.0,
- default=(0.00002))
+ name="Scale",
+ description="Scale factor of Media Absorption Color. "
+ "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')
+ 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',
+ )
media_eccentricity: FloatProperty(
- name="Media Eccenticity Factor", description="Positive values lead"
- " to scattering in the direction of the light and negative "
- "values lead to scattering in the opposite direction of the "
- "light. Larger values of e (or smaller values in the negative"
- " case) increase the directional property of the scattering.",
- precision=2, step=0.01, min=-1.0, max=1.0,
- default=(0.0),
- options={'ANIMATABLE'})
+ name="Media Eccenticity Factor",
+ description="Positive values lead"
+ " to scattering in the direction of the light and negative "
+ "values lead to scattering in the opposite direction of the "
+ "light. Larger values of e (or smaller values in the negative"
+ " case) increase the directional property of the scattering.",
+ 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 texture baking",
- default=False)
+ name="Enable Baking",
+ description="Enable POV texture baking",
+ default=False
+ )
+
indentation_character: EnumProperty(
- name="Indentation",
- description="Select the indentation type",
- items=(('NONE', "None", "No indentation"),
- ('TAB', "Tabs", "Indentation with tabs"),
- ('SPACE', "Spaces", "Indentation with spaces")),
- default='SPACE')
+ name="Indentation",
+ description="Select the indentation type",
+ items=(
+ ('NONE', "None", "No indentation"),
+ ('TAB', "Tabs", "Indentation with tabs"),
+ ('SPACE', "Spaces", "Indentation with spaces")),
+ default='SPACE'
+ )
+
indentation_spaces: IntProperty(
- name="Quantity of spaces",
- description="The number of spaces for indentation",
- min=1, max=10, default=4)
+ name="Quantity of spaces",
+ description="The number of spaces for indentation",
+ min=1,
+ max=10,
+ default=4,
+ )
comments_enable: BoolProperty(
- name="Enable Comments",
- description="Add comments to pov file",
- default=True)
+ name="Enable Comments",
+ description="Add comments to pov file",
+ default=True,
+ )
# Real pov options
command_line_switches: StringProperty(
- name="Command Line Switches",
- description="Command line switches consist of a + (plus) or - "
- "(minus) sign, followed by one or more alphabetic "
- "characters and possibly a numeric value",
- maxlen=500)
+ name="Command Line Switches",
+ description="Command line switches consist of a + (plus) or - "
+ "(minus) sign, followed by one or more alphabetic "
+ "characters and possibly a numeric value",
+ maxlen=500,
+ )
antialias_enable: BoolProperty(
- name="Anti-Alias", description="Enable Anti-Aliasing",
- default=True)
+ name="Anti-Alias", description="Enable Anti-Aliasing",
+ default=True,
+ )
antialias_method: EnumProperty(
- name="Method",
- description="AA-sampling method. Type 1 is an adaptive, "
- "non-recursive, super-sampling method. Type 2 is an "
- "adaptive and recursive super-sampling method. Type 3 "
- "is a stochastic halton based super-sampling method",
- items=(("0", "non-recursive AA", "Type 1 Sampling in POV"),
- ("1", "recursive AA", "Type 2 Sampling in POV"),
- ("2", "stochastic AA", "Type 3 Sampling in POV")),
- default="1")
+ name="Method",
+ description="AA-sampling method. Type 1 is an adaptive, "
+ "non-recursive, super-sampling method. Type 2 is an "
+ "adaptive and recursive super-sampling method. Type 3 "
+ "is a stochastic halton based super-sampling method",
+ items=(
+ ("0", "non-recursive AA", "Type 1 Sampling in POV"),
+ ("1", "recursive AA", "Type 2 Sampling in POV"),
+ ("2", "stochastic AA", "Type 3 Sampling in POV")
+ ),
+ default="1",
+ )
antialias_confidence: FloatProperty(
- name="Antialias Confidence",
- description="how surely the computed color "
- "of a given pixel is indeed"
- "within the threshold error margin",
- min=0.0001, max=1.0000, default=0.9900, precision=4)
+ name="Antialias Confidence",
+ description="how surely the computed color "
+ "of a given pixel is indeed"
+ "within the threshold error margin",
+ min=0.0001, max=1.0000, default=0.9900, precision=4
+ )
+
antialias_depth: IntProperty(
- name="Antialias Depth", description="Depth of pixel for sampling",
- min=1, max=9, default=3)
+ name="Antialias Depth",
+ description="Depth of pixel for sampling",
+ min=1, max=9, default=3
+ )
antialias_threshold: FloatProperty(
- name="Antialias Threshold", description="Tolerance for sub-pixels",
- min=0.0, max=1.0, soft_min=0.05, soft_max=0.5, default=0.03)
+ name="Antialias Threshold",
+ description="Tolerance for sub-pixels",
+ min=0.0,
+ max=1.0,
+ soft_min=0.05,
+ soft_max=0.5,
+ default=0.03,
+ )
jitter_enable: BoolProperty(
- name="Jitter",
- description="Enable Jittering. Adds noise into the sampling "
- "process (it should be avoided to use jitter in "
- "animation)",
- default=False)
+ name="Jitter",
+ description="Enable Jittering. Adds noise into the sampling "
+ "process (it should be avoided to use jitter in "
+ "animation)",
+ default=False,
+ )
jitter_amount: FloatProperty(
- name="Jitter Amount", description="Amount of jittering",
- min=0.0, max=1.0, soft_min=0.01, soft_max=1.0, default=1.0)
+ name="Jitter Amount",
+ description="Amount of jittering",
+ min=0.0,
+ max=1.0,
+ soft_min=0.01,
+ soft_max=1.0,
+ default=1.0,
+ )
antialias_gamma: FloatProperty(
- name="Antialias Gamma",
- description="POV-Ray compares gamma-adjusted values for super "
- "sampling. Antialias Gamma sets the Gamma before "
- "comparison",
- min=0.0, max=5.0, soft_min=0.01, soft_max=2.5, default=2.5)
+ name="Antialias Gamma",
+ description="POV-Ray compares gamma-adjusted values for super "
+ "sampling. Antialias Gamma sets the Gamma before "
+ "comparison",
+ min=0.0,
+ max=5.0,
+ soft_min=0.01,
+ soft_max=2.5,
+ default=2.5,
+ )
alpha_mode: EnumProperty(
- name="Alpha",
- description="Representation of alpha information in the RGBA pixels",
- items=(("SKY", "Sky", "Transparent pixels are filled with sky color"),
- ("TRANSPARENT", "Transparent", "Transparent, World background is transparent with premultiplied alpha")),
- default="SKY")
+ name="Alpha",
+ description="Representation of alpha information in the RGBA pixels",
+ items=(
+ ("SKY", "Sky", "Transparent pixels are filled with sky color"),
+ (
+ "TRANSPARENT",
+ "Transparent",
+ "Transparent, World background is transparent with premultiplied alpha",
+ ),
+ ),
+ default="SKY",
+ )
use_shadows: BoolProperty(
- name="Shadows",
- description="Calculate shadows while rendering",
- default=True)
+ name="Shadows",
+ description="Calculate shadows while rendering",
+ default=True,
+ )
max_trace_level: IntProperty(
- name="Max Trace Level",
- description="Number of reflections/refractions allowed on ray "
- "path",
- min=1, max=256, default=5)
+ name="Max Trace Level",
+ description="Number of reflections/refractions allowed on ray "
+ "path",
+ min=1, max=256, default=5
+ )
-#######NEW from Lanuhum
adc_bailout_enable: BoolProperty(
- name="Enable",
- description="",
- default=False)
+ name="Enable",
+ description="",
+ default=False,
+ )
adc_bailout: FloatProperty(
- name="ADC Bailout",
- description="",
- min=0.0, max=1000.0,default=0.00392156862745, precision=3)
+ name="ADC Bailout",
+ description="Adaptive Depth Control (ADC) to stop computing additional"
+ "reflected or refracted rays when their contribution is insignificant."
+ "The default value is 1/255, or approximately 0.0039, since a change "
+ "smaller than that could not be visible in a 24 bit image. Generally "
+ "this value is fine and should be left alone."
+ "Setting adc_bailout to 0 will disable ADC, relying completely on "
+ "max_trace_level to set an upper limit on the number of rays spawned. ",
+ min=0.0,
+ max=1000.0,
+ default=0.00392156862745,
+ precision=3
+ )
ambient_light_enable: BoolProperty(
- name="Enable",
- description="",
- default=False)
+ name="Enable",
+ description="",
+ default=False,
+ )
ambient_light: FloatVectorProperty(
- name="Ambient Light",
- description="Ambient light is used to simulate the effect of inter-diffuse reflection",
- precision=4, step=0.01, min=0, soft_max=1,
- default=(1, 1, 1), options={'ANIMATABLE'}, subtype='COLOR',
+ name="Ambient Light",
+ description="Ambient light is used to simulate the effect of inter-diffuse reflection",
+ precision=4, step=0.01, min=0, soft_max=1,
+ default=(1, 1, 1), options={'ANIMATABLE'}, subtype='COLOR',
)
global_settings_advanced: BoolProperty(
- name="Advanced",
- description="",
- default=False)
+ name="Advanced",
+ description="",
+ default=False,
+ )
irid_wavelength_enable: BoolProperty(
- name="Enable",
- description="",
- default=False)
+ name="Enable",
+ description="",
+ default=False,
+ )
irid_wavelength: FloatVectorProperty(
- name="Irid Wavelength",
- description=(
- "Iridescence calculations depend upon the dominant "
- "wavelengths of the primary colors of red, green and blue light"
- ),
- precision=4, step=0.01, min=0, soft_max=1,
- default=(0.25,0.18,0.14), options={'ANIMATABLE'}, subtype='COLOR')
+ name="Irid Wavelength",
+ description=(
+ "Iridescence calculations depend upon the dominant "
+ "wavelengths of the primary colors of red, green and blue light"
+ ),
+ precision=4, step=0.01, min=0, soft_max=1,
+ default=(0.25,0.18,0.14), options={'ANIMATABLE'}, subtype='COLOR'
+ )
charset: EnumProperty(
- name="Charset",
- description="This allows you to specify the assumed character set of all text strings",
- items=(("ascii", "ASCII", ""),
- ("utf8", "UTF-8", ""),
- ("sys", "SYS", "")),
- default="utf8")
+ name="Charset",
+ description="This allows you to specify the assumed character set of all text strings",
+ items=(
+ ("ascii", "ASCII", ""),
+ ("utf8", "UTF-8", ""),
+ ("sys", "SYS", "")
+ ),
+ default="utf8",
+ )
max_intersections_enable: BoolProperty(
- name="Enable",
- description="",
- default=False)
+ name="Enable",
+ description="",
+ default=False,
+ )
max_intersections: IntProperty(
- name="Max Intersections",
- description="POV-Ray uses a set of internal stacks to collect ray/object intersection points",
- min=2, max=1024, default=64)
+ name="Max Intersections",
+ description="POV-Ray uses a set of internal stacks to collect ray/object intersection points",
+ min=2,
+ max=1024,
+ default=64,
+ )
number_of_waves_enable: BoolProperty(
- name="Enable",
- description="",
- default=False)
+ name="Enable",
+ description="",
+ default=False,
+ )
number_of_waves: IntProperty(
- name="Number Waves",
- description=(
- "The waves and ripples patterns are generated by summing a series of waves, "
- "each with a slightly different center and size"
- ),
- min=1, max=10, default=1000)
+ name="Number Waves",
+ description=(
+ "The waves and ripples patterns are generated by summing a series of waves, "
+ "each with a slightly different center and size"
+ ),
+ min=1,
+ max=10,
+ default=1000,
+ )
noise_generator_enable: BoolProperty(
- name="Enable",
- description="",
- default=False)
+ name="Enable",
+ description="",
+ default=False,
+ )
noise_generator: IntProperty(
- name="Noise Generator",
- description="There are three noise generators implemented",
- min=1, max=3, default=2)
+ name="Noise Generator",
+ description="There are three noise generators implemented",
+ min=1,
+ max=3,
+ default=2,
+ )
########################### PHOTONS #######################################
photon_enable: BoolProperty(
- name="Photons",
- description="Enable global photons",
- default=False)
+ name="Photons",
+ description="Enable global photons",
+ default=False,
+ )
photon_enable_count: BoolProperty(
- name="Spacing / Count",
- description="Enable count photons",
- default=False)
+ name="Spacing / Count",
+ description="Enable count photons",
+ default=False,
+ )
photon_count: IntProperty(
- name="Count",
- description="Photons count",
- min=1, max=100000000, default=20000)
+ name="Count",
+ description="Photons count",
+ min=1,
+ max=100000000,
+ default=20000
+ )
photon_spacing: FloatProperty(
- name="Spacing",
- description="Average distance between photons on surfaces. half "
- "this get four times as many surface photons",
- min=0.001, max=1.000, default=0.005,
- soft_min=0.001, soft_max=1.000, precision=3)
+ name="Spacing",
+ description="Average distance between photons on surfaces. half "
+ "this get four times as many surface photons",
+ min=0.001,
+ max=1.000,
+ soft_min=0.001,
+ soft_max=1.000,
+ precision=3
+ default=0.005,
+ )
photon_max_trace_level: IntProperty(
- name="Max Trace Level",
- description="Number of reflections/refractions allowed on ray "
- "path",
- min=1, max=256, default=5)
+ name="Max Trace Level",
+ description="Number of reflections/refractions allowed on ray "
+ "path",
+ min=1,
+ max=256,
+ default=5
+ )
photon_adc_bailout: FloatProperty(
- name="ADC Bailout",
- description="The adc_bailout for photons. Use adc_bailout = "
- "0.01 / brightest_ambient_object for good results",
- min=0.0, max=1000.0, default=0.1,
- soft_min=0.0, soft_max=1.0, precision=3)
+ name="ADC Bailout",
+ description="The adc_bailout for photons. Use adc_bailout = "
+ "0.01 / brightest_ambient_object for good results",
+ min=0.0,
+ max=1000.0,
+ soft_min=0.0,
+ soft_max=1.0,
+ precision=3,
+ default=0.1,
+ )
photon_gather_min: IntProperty(
- name="Gather Min", description="Minimum number of photons gathered"
- "for each point",
- min=1, max=256, default=20)
+ name="Gather Min", description="Minimum number of photons gathered"
+ "for each point",
+ min=1, max=256, default=20
+ )
photon_gather_max: IntProperty(
- name="Gather Max", description="Maximum number of photons gathered for each point",
- min=1, max=256, default=100)
+ name="Gather Max", description="Maximum number of photons gathered for each point",
+ min=1, max=256, default=100
+ )
photon_map_file_save_load: EnumProperty(
- name="Operation",
- description="Load or Save photon map file",
- items=(("NONE", "None", ""),
- ("save", "Save", ""),
- ("load", "Load", "")),
- default="NONE")
+ name="Operation",
+ description="Load or Save photon map file",
+ items=(
+ ("NONE", "None", ""),
+ ("save", "Save", ""),
+ ("load", "Load", "")
+ ),
+ default="NONE",
+ )
photon_map_filename: StringProperty(
- name="Filename",
- description="",
- maxlen=1024)
+ name="Filename",
+ description="",
+ maxlen=1024
+ )
photon_map_dir: StringProperty(
- name="Directory",
- description="",
- maxlen=1024, subtype="DIR_PATH")
+ name="Directory",
+ description="",
+ maxlen=1024,
+ subtype="DIR_PATH",
+ )
photon_map_file: StringProperty(
- name="File",
- description="",
- maxlen=1024, subtype="FILE_PATH")
+ name="File",
+ description="",
+ maxlen=1024,
+ subtype="FILE_PATH"
+ )
#########RADIOSITY########
radio_adc_bailout: FloatProperty(
- name="ADC Bailout",
- description="The adc_bailout for radiosity rays. Use "
- "adc_bailout = 0.01 / brightest_ambient_object for good results",
- min=0.0, max=1000.0, soft_min=0.0, soft_max=1.0, default=0.0039, precision=4)
+ name="ADC Bailout",
+ description="The adc_bailout for radiosity rays. Use "
+ "adc_bailout = 0.01 / brightest_ambient_object for good results",
+ min=0.0,
+ max=1000.0,
+ soft_min=0.0,
+ soft_max=1.0,
+ default=0.0039,
+ precision=4,
+ )
radio_always_sample: BoolProperty(
- name="Always Sample",
- description="Only use the data from the pretrace step and not gather "
- "any new samples during the final radiosity pass",
- default=False)
+ name="Always Sample",
+ description="Only use the data from the pretrace step and not gather "
+ "any new samples during the final radiosity pass",
+ default=False,
+ )
radio_brightness: FloatProperty(
- name="Brightness",
- description="Amount objects are brightened before being returned "
- "upwards to the rest of the system",
- min=0.0, max=1000.0, soft_min=0.0, soft_max=10.0, default=1.0)
+ name="Brightness",
+ description="Amount objects are brightened before being returned "
+ "upwards to the rest of the system",
+ min=0.0, max=1000.0, soft_min=0.0, soft_max=10.0, default=1.0
+ )
radio_count: IntProperty(
- name="Ray Count",
- description="Number of rays for each new radiosity value to be calculated "
- "(halton sequence over 1600)",
- min=1, max=10000, soft_max=1600, default=35)
+ name="Ray Count",
+ description="Number of rays for each new radiosity value to be calculated "
+ "(halton sequence over 1600)",
+ min=1, max=10000, soft_max=1600, default=35
+ )
radio_error_bound: FloatProperty(
- name="Error Bound",
- description="One of the two main speed/quality tuning values, "
- "lower values are more accurate",
- min=0.0, max=1000.0, soft_min=0.1, soft_max=10.0, default=1.8)
+ name="Error Bound",
+ description="One of the two main speed/quality tuning values, "
+ "lower values are more accurate",
+ min=0.0, max=1000.0, soft_min=0.1, soft_max=10.0, default=1.8
+ )
radio_gray_threshold: FloatProperty(
- name="Gray Threshold",
- description="One of the two main speed/quality tuning values, "
- "lower values are more accurate",
- min=0.0, max=1.0, soft_min=0, soft_max=1, default=0.0)
+ name="Gray Threshold",
+ description="One of the two main speed/quality tuning values, "
+ "lower values are more accurate",
+ min=0.0, max=1.0, soft_min=0, soft_max=1, default=0.0
+ )
radio_low_error_factor: FloatProperty(
- name="Low Error Factor",
- description="Just enough samples is slightly blotchy. Low error changes error "
- "tolerance for less critical last refining pass",
- min=0.000001, max=1.0, soft_min=0.000001, soft_max=1.0, default=0.5)
+ name="Low Error Factor",
+ description="Just enough samples is slightly blotchy. Low error changes error "
+ "tolerance for less critical last refining pass",
+ min=0.000001, max=1.0, soft_min=0.000001, soft_max=1.0, default=0.5
+ )
radio_media: BoolProperty(
- name="Media", description="Radiosity estimation can be affected by media",
- default=True)
+ name="Media",
+ description="Radiosity estimation can be affected by media",
+ default=True,
+ )
radio_subsurface: BoolProperty(
- name="Subsurface", description="Radiosity estimation can be affected by Subsurface Light Transport",
- default=False)
+ name="Subsurface",
+ description="Radiosity estimation can be affected by Subsurface Light Transport",
+ default=False,
+ )
radio_minimum_reuse: FloatProperty(
- name="Minimum Reuse",
- description="Fraction of the screen width which sets the minimum radius of reuse "
- "for each sample point (At values higher than 2% expect errors)",
- min=0.0, max=1.0, soft_min=0.1, soft_max=0.1, default=0.015, precision=3)
+ name="Minimum Reuse",
+ description="Fraction of the screen width which sets the minimum radius of reuse "
+ "for each sample point (At values higher than 2% expect errors)",
+ min=0.0, max=1.0, soft_min=0.1, soft_max=0.1, default=0.015, precision=3
+ )
radio_maximum_reuse: FloatProperty(
- name="Maximum Reuse",
- description="The maximum reuse parameter works in conjunction with, and is similar to that of minimum reuse, "
- "the only difference being that it is an upper bound rather than a lower one",
- min=0.0, max=1.0,default=0.2, precision=3)
+ name="Maximum Reuse",
+ description="The maximum reuse parameter works in conjunction with, and is similar to that of minimum reuse, "
+ "the only difference being that it is an upper bound rather than a lower one",
+ min=0.0, max=1.0,default=0.2, precision=3
+ )
radio_nearest_count: IntProperty(
- name="Nearest Count",
- description="Number of old ambient values blended together to "
- "create a new interpolated value",
- min=1, max=20, default=1)
+ name="Nearest Count",
+ description="Number of old ambient values blended together to "
+ "create a new interpolated value",
+ min=1, max=20, default=1
+ )
radio_normal: BoolProperty(
- name="Normals", description="Radiosity estimation can be affected by normals",
- default=False)
+ name="Normals",
+ description="Radiosity estimation can be affected by normals",
+ default=False,
+ )
radio_recursion_limit: IntProperty(
- name="Recursion Limit",
- description="how many recursion levels are used to calculate "
- "the diffuse inter-reflection",
- min=1, max=20, default=1)
+ name="Recursion Limit",
+ description="how many recursion levels are used to calculate "
+ "the diffuse inter-reflection",
+ min=1, max=20, default=1
+ )
radio_pretrace_start: FloatProperty(
- name="Pretrace Start",
- description="Fraction of the screen width which sets the size of the "
- "blocks in the mosaic preview first pass",
- min=0.01, max=1.00, soft_min=0.02, soft_max=1.0, default=0.08)
+ name="Pretrace Start",
+ description="Fraction of the screen width which sets the size of the "
+ "blocks in the mosaic preview first pass",
+ min=0.01, max=1.00, soft_min=0.02, soft_max=1.0, default=0.08
+ )
radio_pretrace_end: FloatProperty(
- name="Pretrace End",
- description="Fraction of the screen width which sets the size of the blocks "
- "in the mosaic preview last pass",
- min=0.000925, max=1.00, soft_min=0.01, soft_max=1.00, default=0.04, precision=3)
+ name="Pretrace End",
+ description="Fraction of the screen width which sets the size of the blocks "
+ "in the mosaic preview last pass",
+ min=0.000925, max=1.00, soft_min=0.01, soft_max=1.00, default=0.04, precision=3
+ )
###############################################################################
# Material POV properties.
###############################################################################
class MaterialTextureSlot(PropertyGroup):
"""Declare material texture slot level properties for UI and translated to POV."""
+
bl_idname="pov_texture_slots",
bl_description="Texture_slots from Blender-2.79",
-
+
texture : StringProperty(update=active_texture_name_from_uilist)
texture_search : StringProperty(update=active_texture_name_from_search)
alpha_factor: FloatProperty(
- name="Alpha",
- description="Amount texture affects alpha",
- default = 0.0)
+ name="Alpha",
+ description="Amount texture affects alpha",
+ default = 0.0,
+ )
ambient_factor: FloatProperty(
- name="",
- description="Amount texture affects ambient",
- default = 0.0)
+ name="",
+ description="Amount texture affects ambient",
+ default = 0.0,
+ )
bump_method: EnumProperty(
- name="",
- description="Method to use for bump mapping",
- items=(("BUMP_ORIGINAL", "Bump Original", ""),
- ("BUMP_COMPATIBLE", "Bump Compatible", ""),
- ("BUMP_DEFAULT", "Bump Default", ""),
- ("BUMP_BEST_QUALITY", "Bump Best Quality", "")),
- default="BUMP_ORIGINAL")
+ name="",
+ description="Method to use for bump mapping",
+ items=(
+ ("BUMP_ORIGINAL", "Bump Original", ""),
+ ("BUMP_COMPATIBLE", "Bump Compatible", ""),
+ ("BUMP_DEFAULT", "Bump Default", ""),
+ ("BUMP_BEST_QUALITY", "Bump Best Quality", "")
+ ),
+ default="BUMP_ORIGINAL",
+ )
bump_objectspace: EnumProperty(
- name="",
- description="Space to apply bump mapping in",
- items=(("BUMP_VIEWSPACE", "Bump Viewspace", ""),
- ("BUMP_OBJECTSPACE", "Bump Objectspace", ""),
- ("BUMP_TEXTURESPACE", "Bump Texturespace", "")),
- default="BUMP_VIEWSPACE")
+ name="",
+ description="Space to apply bump mapping in",
+ items=(
+ ("BUMP_VIEWSPACE", "Bump Viewspace", ""),
+ ("BUMP_OBJECTSPACE", "Bump Objectspace", ""),
+ ("BUMP_TEXTURESPACE", "Bump Texturespace", "")
+ ),
+ default="BUMP_VIEWSPACE",
+ )
density_factor: FloatProperty(
- name="",
- description="Amount texture affects density",
- default = 0.0)
+ name="",
+ description="Amount texture affects density",
+ default = 0.0,
+ )
diffuse_color_factor: FloatProperty(
- name="",
- description="Amount texture affects diffuse color",
- default = 0.0)
+ name="",
+ description="Amount texture affects diffuse color",
+ default = 0.0,
+ )
diffuse_factor: FloatProperty(
- name="",
- description="Amount texture affects diffuse reflectivity",
- default = 0.0)
+ name="",
+ description="Amount texture affects diffuse reflectivity",
+ default = 0.0,
+ )
displacement_factor: FloatProperty(
- name="",
- description="Amount texture displaces the surface",
- default = 0.0)
+ name="",
+ description="Amount texture displaces the surface",
+ default = 0.0,
+ )
emission_color_factor: FloatProperty(
- name="",
- description="Amount texture affects emission color",
- default = 0.0)
+ name="",
+ description="Amount texture affects emission color",
+ default = 0.0,
+ )
emission_factor: FloatProperty(
- name="",
- description="Amount texture affects emission",
- default = 0.0)
+ name="",
+ description="Amount texture affects emission",
+ default = 0.0,
+ )
emit_factor: FloatProperty(
- name="",
- description="Amount texture affects emission",
- default = 0.0)
+ name="",
+ description="Amount texture affects emission",
+ default = 0.0,
+ )
hardness_factor: FloatProperty(
- name="",
- description="Amount texture affects hardness",
- default = 0.0)
+ name="",
+ description="Amount texture affects hardness",
+ default = 0.0,
+ )
mapping: EnumProperty(
- name="",
- description="",
- items=(("FLAT", "Flat", ""),
- ("CUBE", "Cube", ""),
- ("TUBE", "Tube", ""),
- ("SPHERE", "Sphere", "")),
- default="FLAT")
+ name="",
+ description="",
+ items=(("FLAT", "Flat", ""),
+ ("CUBE", "Cube", ""),
+ ("TUBE", "Tube", ""),
+ ("SPHERE", "Sphere", "")),
+ default="FLAT",
+ )
mapping_x: EnumProperty(
- name="",
- description="",
- items=(("NONE", "", ""),
- ("X", "", ""),
- ("Y", "", ""),
- ("Z", "", "")),
- default="NONE")
+ name="",
+ description="",
+ items=(("NONE", "", ""),
+ ("X", "", ""),
+ ("Y", "", ""),
+ ("Z", "", "")),
+ default="NONE",
+ )
mapping_y: EnumProperty(
- name="",
- description="",
- items=(("NONE", "", ""),
- ("X", "", ""),
- ("Y", "", ""),
- ("Z", "", "")),
- default="NONE")
+ name="",
+ description="",
+ items=(("NONE", "", ""),
+ ("X", "", ""),
+ ("Y", "", ""),
+ ("Z", "", "")),
+ default="NONE",
+ )
mapping_z: EnumProperty(
- name="",
- description="",
- items=(("NONE", "", ""),
- ("X", "", ""),
- ("Y", "", ""),
- ("Z", "", "")),
- default="NONE")
+ name="",
+ description="",
+ items=(("NONE", "", ""),
+ ("X", "", ""),
+ ("Y", "", ""),
+ ("Z", "", "")),
+ default="NONE",
+ )
mirror_factor: FloatProperty(
- name="",
- description="Amount texture affects mirror color",
- default = 0.0)
+ name="",
+ description="Amount texture affects mirror color",
+ default = 0.0,
+ )
normal_factor: FloatProperty(
- name="",
- description="Amount texture affects normal values",
- default = 0.0)
+ name="",
+ description="Amount texture affects normal values",
+ default = 0.0,
+ )
normal_map_space: EnumProperty(
- name="",
- description="Sets space of normal map image",
- items=(("CAMERA", "Camera", ""),
- ("WORLD", "World", ""),
- ("OBJECT", "Object", ""),
- ("TANGENT", "Tangent", "")),
- default="CAMERA")
+ name="",
+ description="Sets space of normal map image",
+ items=(("CAMERA", "Camera", ""),
+ ("WORLD", "World", ""),
+ ("OBJECT", "Object", ""),
+ ("TANGENT", "Tangent", "")),
+ default="CAMERA",
+ )
object: StringProperty(
- name="Object",
- description="Object to use for mapping with Object texture coordinates",
- default ="")
+ name="Object",
+ description="Object to use for mapping with Object texture coordinates",
+ default ="",
+ )
raymir_factor: FloatProperty(
- name="",
- description="Amount texture affects ray mirror",
- default = 0.0)
+ name="",
+ description="Amount texture affects ray mirror",
+ default = 0.0,
+ )
reflection_color_factor: FloatProperty(
- name="",
- description="Amount texture affects color of out-scattered light",
- default = 0.0)
+ name="",
+ description="Amount texture affects color of out-scattered light",
+ default = 0.0,
+ )
reflection_factor: FloatProperty(
- name="",
- description="Amount texture affects brightness of out-scattered light",
- default = 0.0)
+ name="",
+ description="Amount texture affects brightness of out-scattered light",
+ default = 0.0,
+ )
scattering_factor: FloatProperty(
- name="",
- description="Amount texture affects scattering",
- default = 0.0)
+ name="",
+ description="Amount texture affects scattering",
+ default = 0.0,
+ )
specular_color_factor: FloatProperty(
- name="",
- description="Amount texture affects specular color",
- default = 0.0)
+ name="",
+ description="Amount texture affects specular color",
+ default = 0.0,
+ )
specular_factor: FloatProperty(
- name="",
- description="Amount texture affects specular reflectivity",
- default = 0.0)
+ name="",
+ description="Amount texture affects specular reflectivity",
+ default = 0.0,
+ )
texture_coords: EnumProperty(
- name="",
- description="",
- items=(("GLOBAL", "Global", ""),
- ("OBJECT", "Object", ""),
- ("UV", "UV", ""),
- ("ORCO", "Original Coordinates", ""),
- ("STRAND", "Strand", ""),
- ("STICKY", "Sticky", ""),
- ("WINDOW", "Window", ""),
- ("NORMAL", "Normal", ""),
- ("REFLECTION", "Reflection", ""),
- ("STRESS", "Stress", ""),
- ("TANGENT", "Tangent", "")),
- default="GLOBAL")
+ name="",
+ description="",
+ items=(("GLOBAL", "Global", ""),
+ ("OBJECT", "Object", ""),
+ ("UV", "UV", ""),
+ ("ORCO", "Original Coordinates", ""),
+ ("STRAND", "Strand", ""),
+ ("STICKY", "Sticky", ""),
+ ("WINDOW", "Window", ""),
+ ("NORMAL", "Normal", ""),
+ ("REFLECTION", "Reflection", ""),
+ ("STRESS", "Stress", ""),
+ ("TANGENT", "Tangent", "")),
+ default="GLOBAL",
+ )
translucency_factor: FloatProperty(
- name="",
- description="Amount texture affects translucency",
- default = 0.0)
+ name="",
+ description="Amount texture affects translucency",
+ default = 0.0,
+ )
transmission_color_factor: FloatProperty(
- name="",
- description="Amount texture affects result color after light has been scattered/absorbed",
- default = 0.0)
+ name="",
+ description="Amount texture affects result color after light has been scattered/absorbed",
+ default = 0.0,
+ )
use: BoolProperty(
- name="",
- description="Enable this material texture slot",
- default = True)
+ name="",
+ description="Enable this material texture slot",
+ default = True,
+ )
use_from_dupli: BoolProperty(
- name="",
- description="Dupli’s instanced from verts, faces or particles, inherit texture coordinate from their parent",
- default = False)
+ name="",
+ description="Dupli’s instanced from verts, faces or particles, inherit texture coordinate from their parent",
+ default = False,
+ )
use_from_original: BoolProperty(
- name="",
- description="Dupli’s derive their object coordinates from the original objects transformation",
- default = False)
+ name="",
+ description="Dupli’s derive their object coordinates from the original objects transformation",
+ default = False,
+ )
use_map_alpha: BoolProperty(
- name="",
- description="Causes the texture to affect the alpha value",
- default = False)
+ name="",
+ description="Causes the texture to affect the alpha value",
+ default = False,
+ )
use_map_ambient: BoolProperty(
- name="",
- description="Causes the texture to affect the value of ambient",
- default = False)
+ name="",
+ description="Causes the texture to affect the value of ambient",
+ default = False,
+ )
use_map_color_diffuse: BoolProperty(
- name="",
- description="Causes the texture to affect basic color of the material",
- default = False)
+ name="",
+ description="Causes the texture to affect basic color of the material",
+ default = False,
+ )
use_map_color_emission: BoolProperty(
- name="",
- description="Causes the texture to affect the color of emission",
- default = False)
+ name="",
+ description="Causes the texture to affect the color of emission",
+ default = False,
+ )
use_map_color_reflection: BoolProperty(
- name="",
- description="Causes the texture to affect the color of scattered light",
- default = False)
+ name="",
+ description="Causes the texture to affect the color of scattered light",
+ default = False,
+ )
use_map_color_spec: BoolProperty(
- name="",
- description="Causes the texture to affect the specularity color",
- default = False)
+ name="",
+ description="Causes the texture to affect the specularity color",
+ default = False,
+ )
use_map_color_transmission: BoolProperty(
- name="",
- description="Causes the texture to affect the result color after other light has been scattered/absorbed",
- default = False)
+ name="",
+ description="Causes the texture to affect the result color after other light has been scattered/absorbed",
+ default = False,
+ )
use_map_density: BoolProperty(
- name="",
- description="Causes the texture to affect the volume’s density",
- default = False)
+ name="",
+ description="Causes the texture to affect the volume’s density",
+ default = False,
+ )
use_map_diffuse: BoolProperty(
- name="",
- description="Causes the texture to affect the value of the materials diffuse reflectivity",
- default = False)
+ name="",
+ description="Causes the texture to affect the value of the materials diffuse reflectivity",
+ default = False,
+ )
use_map_displacement: BoolProperty(
- name="",
- description="Let the texture displace the surface",
- default = False)
+ name="",
+ description="Let the texture displace the surface",
+ default = False,
+ )
use_map_emission: BoolProperty(
- name="",
- description="Causes the texture to affect the volume’s emission",
- default = False)
+ name="",
+ description="Causes the texture to affect the volume’s emission",
+ default = False,
+ )
use_map_emit: BoolProperty(
- name="",
- description="Causes the texture to affect the emit value",
- default = False)
+ name="",
+ description="Causes the texture to affect the emit value",
+ default = False,
+ )
use_map_hardness: BoolProperty(
- name="",
- description="Causes the texture to affect the hardness value",
- default = False)
+ name="",
+ description="Causes the texture to affect the hardness value",
+ default = False,
+ )
use_map_mirror: BoolProperty(
- name="",
- description="Causes the texture to affect the mirror color",
- default = False)
+ name="",
+ description="Causes the texture to affect the mirror color",
+ default = False,
+ )
use_map_normal: BoolProperty(
- name="",
- description="Causes the texture to affect the rendered normal",
- default = False)
+ name="",
+ description="Causes the texture to affect the rendered normal",
+ default = False,
+ )
use_map_raymir: BoolProperty(
- name="",
- description="Causes the texture to affect the ray-mirror value",
- default = False)
+ name="",
+ description="Causes the texture to affect the ray-mirror value",
+ default = False,
+ )
use_map_reflect: BoolProperty(
- name="",
- description="Causes the texture to affect the reflected light’s brightness",
- default = False)
+ name="",
+ description="Causes the texture to affect the reflected light’s brightness",
+ default = False,
+ )
use_map_scatter: BoolProperty(
- name="",
- description="Causes the texture to affect the volume’s scattering",
- default = False)
+ name="",
+ description="Causes the texture to affect the volume’s scattering",
+ default = False,
+ )
use_map_specular: BoolProperty(
- name="",
- description="Causes the texture to affect the value of specular reflectivity",
- default = False)
+ name="",
+ description="Causes the texture to affect the value of specular reflectivity",
+ default = False,
+ )
use_map_translucency: BoolProperty(
- name="",
- description="Causes the texture to affect the translucency value",
- default = False)
+ name="",
+ description="Causes the texture to affect the translucency value",
+ default = False,
+ )
use_map_warp: BoolProperty(
- name="",
- description="Let the texture warp texture coordinates of next channels",
- default = False)
+ name="",
+ description="Let the texture warp texture coordinates of next channels",
+ default = False,
+ )
uv_layer: StringProperty(
- name="",
- description="UV layer to use for mapping with UV texture coordinates",
- default = "")
+ name="",
+ description="UV layer to use for mapping with UV texture coordinates",
+ default = "",
+ )
warp_factor: FloatProperty(
- name="",
- description="Amount texture affects texture coordinates of next channels",
- default = 0.0)
-
-
-#######################################"
-
+ name="",
+ description="Amount texture affects texture coordinates of next channels",
+ default = 0.0,
+ )
+
+
+#######################################"
+
blend_factor: FloatProperty(
- name="Blend",
- description="Amount texture affects color progression of the "
- "background",
- soft_min=0.0, soft_max=1.0, default=1.0)
+ name="Blend",
+ description="Amount texture affects color progression of the "
+ "background",
+ soft_min=0.0, soft_max=1.0, default=1.0,
+ )
horizon_factor: FloatProperty(
- name="Horizon",
- description="Amount texture affects color of the horizon"
- "",
- soft_min=0.0, soft_max=1.0, default=1.0)
+ name="Horizon",
+ description="Amount texture affects color of the horizon"
+ "",
+ soft_min=0.0, soft_max=1.0, default=1.0
+ )
object: StringProperty(
- name="Object",
- description="Object to use for mapping with Object texture coordinates",
- default="")
+ name="Object",
+ description="Object to use for mapping with Object texture coordinates",
+ default="",
+ )
texture_coords: EnumProperty(
- name="Coordinates",
- description="Texture coordinates used to map the texture onto the background",
- items=(("VIEW", "View", "Use view vector for the texture coordinates"),
- ("GLOBAL", "Global", "Use global coordinates for the texture coordinates (interior mist)"),
- ("ANGMAP", "AngMap", "Use 360 degree angular coordinates, e.g. for spherical light probes"),
- ("SPHERE", "Sphere", "For 360 degree panorama sky, spherical mapped, only top half"),
- ("EQUIRECT", "Equirectangular", "For 360 degree panorama sky, equirectangular mapping"),
- ("TUBE", "Tube", "For 360 degree panorama sky, cylindrical mapped, only top half"),
- ("OBJECT", "Object", "Use linked object’s coordinates for texture coordinates")),
- default="VIEW")
+ name="Coordinates",
+ description="Texture coordinates used to map the texture onto the background",
+ items=(("VIEW", "View", "Use view vector for the texture coordinates"),
+ ("GLOBAL", "Global", "Use global coordinates for the texture coordinates (interior mist)"),
+ ("ANGMAP", "AngMap", "Use 360 degree angular coordinates, e.g. for spherical light probes"),
+ ("SPHERE", "Sphere", "For 360 degree panorama sky, spherical mapped, only top half"),
+ ("EQUIRECT", "Equirectangular", "For 360 degree panorama sky, equirectangular mapping"),
+ ("TUBE", "Tube", "For 360 degree panorama sky, cylindrical mapped, only top half"),
+ ("OBJECT", "Object", "Use linked object’s coordinates for texture coordinates")),
+ default="VIEW",
+ )
use_map_blend: BoolProperty(
- name="Blend Map", description="Affect the color progression of the background",
- default=True)
+ name="Blend Map",
+ description="Affect the color progression of the background",
+ default=True,
+ )
use_map_horizon: BoolProperty(
- name="Horizon Map", description="Affect the color of the horizon",
- default=False)
+ name="Horizon Map",
+ description="Affect the color of the horizon",
+ default=False,
+ )
use_map_zenith_down: BoolProperty(
- name="", description="Affect the color of the zenith below",
- default=False)
+ name="", description="Affect the color of the zenith below",
+ default=False,
+ )
use_map_zenith_up: BoolProperty(
- name="Zenith Up Map", description="Affect the color of the zenith above",
- default=False)
+ name="Zenith Up Map", description="Affect the color of the zenith above",
+ default=False,
+ )
zenith_down_factor: FloatProperty(
- name="Zenith Down",
- description="Amount texture affects color of the zenith below",
- soft_min=0.0, soft_max=1.0, default=1.0)
+ name="Zenith Down",
+ description="Amount texture affects color of the zenith below",
+ soft_min=0.0, soft_max=1.0, default=1.0
+ )
zenith_up_factor: FloatProperty(
- name="Zenith Up",
- description="Amount texture affects color of the zenith above",
- soft_min=0.0, soft_max=1.0, default=1.0)
+ name="Zenith Up",
+ description="Amount texture affects color of the zenith above",
+ soft_min=0.0, soft_max=1.0, default=1.0
+ )
+
-
-# former Space properties from removed Blender Internal added below at superclass level
-# so as to be available in World, Material, Light for texture slots use
+# former Space properties from removed Blender Internal added below at superclass level
+# so as to be available in World, Material, Light for texture slots use
bpy.types.ID.use_limited_texture_context = BoolProperty(
- name="",
- description="Use the limited version of texture user (for ‘old shading’ mode)",
- default=True)
+ name="",
+ description="Use the limited version of texture user (for ‘old shading’ mode)",
+ default=True,
+)
bpy.types.ID.texture_context = EnumProperty(
- name="Texture context",
- description="Type of texture data to display and edit",
- items=(('MATERIAL', "", "Show material textures", "MATERIAL",0), #"Show material textures"
- ('WORLD', "", "Show world textures", "WORLD",1), #"Show world textures"
- ('LIGHT', "", "Show lamp textures", "LIGHT",2), #"Show lamp textures"
- ('PARTICLES', "", "Show particles textures", "PARTICLES",3), #"Show particles textures"
- ('LINESTYLE', "", "Show linestyle textures", "LINE_DATA",4), #"Show linestyle textures"
- ('OTHER', "", "Show other data textures", "TEXTURE_DATA",5)), #"Show other data textures"
- default = 'MATERIAL')
+ name="Texture context",
+ description="Type of texture data to display and edit",
+ items=(('MATERIAL', "", "Show material textures", "MATERIAL",0), # "Show material textures"
+ ('WORLD', "", "Show world textures", "WORLD",1), # "Show world textures"
+ ('LIGHT', "", "Show lamp textures", "LIGHT",2), # "Show lamp textures"
+ ('PARTICLES', "", "Show particles textures", "PARTICLES",3), # "Show particles textures"
+ ('LINESTYLE', "", "Show linestyle textures", "LINE_DATA",4), # "Show linestyle textures"
+ ('OTHER', "", "Show other data textures", "TEXTURE_DATA",5)), # "Show other data textures"
+ default = 'MATERIAL',
+)
bpy.types.ID.active_texture_index = IntProperty(
- name = "Index for texture_slots",
- default = 0)
-
+ name = "Index for texture_slots",
+ default = 0,
+)
+
class RenderPovSettingsMaterial(PropertyGroup):
"""Declare material level properties controllable in UI and translated to POV."""
+
######################Begin Old Blender Internal Props#########################
- #former Space properties from removed Blender Internal
+ # former Space properties from removed Blender Internal
use_limited_texture_context: BoolProperty(
- name="",
- description="Use the limited version of texture user (for ‘old shading’ mode)",
- default=True)
+ name="",
+ description="Use the limited version of texture user (for ‘old shading’ mode)",
+ default=True,
+ )
texture_context: EnumProperty(
- name="Texture context",
- description="Type of texture data to display and edit",
- items=(('MATERIAL', "", "Show material textures", "MATERIAL",0), #"Show material textures"
- ('WORLD', "", "Show world textures", "WORLD",1), #"Show world textures"
- ('LAMP', "", "Show lamp textures", "LIGHT",2), #"Show lamp textures"
- ('PARTICLES', "", "Show particles textures", "PARTICLES",3), #"Show particles textures"
- ('LINESTYLE', "", "Show linestyle textures", "LINE_DATA",4), #"Show linestyle textures"
- ('OTHER', "", "Show other data textures", "TEXTURE_DATA",5)), #"Show other data textures"
- default = 'MATERIAL')
-
+ name="Texture context",
+ description="Type of texture data to display and edit",
+ items=(('MATERIAL', "", "Show material textures", "MATERIAL",0), # "Show material textures"
+ ('WORLD', "", "Show world textures", "WORLD",1), # "Show world textures"
+ ('LAMP', "", "Show lamp textures", "LIGHT",2), # "Show lamp textures"
+ ('PARTICLES', "", "Show particles textures", "PARTICLES",3), # "Show particles textures"
+ ('LINESTYLE', "", "Show linestyle textures", "LINE_DATA",4), # "Show linestyle textures"
+ ('OTHER', "", "Show other data textures", "TEXTURE_DATA",5)), # "Show other data textures"
+ default = 'MATERIAL',
+ )
+
active_texture_index: IntProperty(
- name = "Index for texture_slots",
- default = 0)
-
+ name = "Index for texture_slots",
+ default = 0,
+ )
+
transparency_method: EnumProperty(
- name="Specular Shader Model",
- description="Method to use for rendering transparency",
- items=(("MASK", "Mask", "Mask the background"),
- ("Z_TRANSPARENCY", "Z Transparency", "Use alpha buffer for transparent faces"),
- ("RAYTRACE", "Raytrace", "Use raytracing for transparent refraction rendering")),
- default="MASK")
-
+ name="Specular Shader Model",
+ description="Method to use for rendering transparency",
+ items=(("MASK", "Mask", "Mask the background"),
+ ("Z_TRANSPARENCY", "Z Transparency", "Use alpha buffer for transparent faces"),
+ ("RAYTRACE", "Raytrace", "Use raytracing for transparent refraction rendering")),
+ default="MASK",
+ )
+
use_transparency: BoolProperty(
- name="Transparency", description="Render material as transparent",
- default=False)
+ name="Transparency",
+ description="Render material as transparent",
+ default=False,
+ )
alpha: FloatProperty(
- name="Alpha",
- description="Alpha transparency of the material",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3)
+ name="Alpha",
+ description="Alpha transparency of the material",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3,
+ )
specular_alpha: FloatProperty(
- name="Specular alpha",
- description="Alpha transparency for specular areas",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3)
-
+ name="Specular alpha",
+ description="Alpha transparency for specular areas",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3,
+ )
+
ambient: FloatProperty(
- name="Ambient",
- description="Amount of global ambient color the material receives",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3)
+ name="Ambient",
+ description="Amount of global ambient color the material receives",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3,
+ )
diffuse_color: FloatVectorProperty(
- name="Diffuse color",
- description=("Diffuse color of the material"),
- precision=4, step=0.01, min=0, #max=inf, soft_max=1,
- default=(0.6,0.6,0.6), options={'ANIMATABLE'}, subtype='COLOR')
+ name="Diffuse color",
+ description=("Diffuse color of the material"),
+ precision=4, step=0.01, min=0, # max=inf, soft_max=1,
+ default=(0.6,0.6,0.6), options={'ANIMATABLE'}, subtype='COLOR',
+ )
darkness: FloatProperty(
- name="Darkness",
- description="Minnaert darkness",
- min=0.0, max=2.0, soft_min=0.0, soft_max=2.0, default=1.0, precision=3)
-
+ name="Darkness",
+ description="Minnaert darkness",
+ min=0.0, max=2.0, soft_min=0.0, soft_max=2.0, default=1.0, precision=3,
+ )
+
diffuse_fresnel: FloatProperty(
- name="Diffuse fresnel",
- description="Power of Fresnel",
- min=0.0, max=5.0, soft_min=0.0, soft_max=5.0, default=1.0, precision=3)
-
+ name="Diffuse fresnel",
+ description="Power of Fresnel",
+ min=0.0, max=5.0, soft_min=0.0, soft_max=5.0, default=1.0, precision=3,
+ )
+
diffuse_fresnel_factor: FloatProperty(
- name="Diffuse fresnel factor",
- description="Blending factor of Fresnel",
- min=0.0, max=5.0, soft_min=0.0, soft_max=5.0, default=0.5, precision=3)
+ name="Diffuse fresnel factor",
+ description="Blending factor of Fresnel",
+ min=0.0, max=5.0, soft_min=0.0, soft_max=5.0, default=0.5, precision=3,
+ )
diffuse_intensity: FloatProperty(
- name="Diffuse intensity",
- description="Amount of diffuse reflection multiplying color",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.8, precision=3)
-
+ name="Diffuse intensity",
+ description="Amount of diffuse reflection multiplying color",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.8, precision=3,
+ )
+
diffuse_ramp_blend: EnumProperty(
- name="Diffuse ramp blend",
- description="Blending method of the ramp and the diffuse color",
- items=(("MIX", "Mix", ""),
- ("ADD", "Add", ""),
- ("MULTIPLY", "Multiply", ""),
- ("SUBTRACT", "Subtract", ""),
- ("SCREEN", "Screen", ""),
- ("DIVIDE", "Divide", ""),
- ("DIFFERENCE", "Difference", ""),
- ("DARKEN", "Darken", ""),
- ("LIGHTEN", "Lighten", ""),
- ("OVERLAY", "Overlay", ""),
- ("DODGE", "Dodge", ""),
- ("BURN", "Burn", ""),
- ("HUE", "Hue", ""),
- ("SATURATION", "Saturation", ""),
- ("VALUE", "Value", ""),
- ("COLOR", "Color", ""),
- ("SOFT_LIGHT", "Soft light", ""),
- ("LINEAR_LIGHT", "Linear light", "")),
- default="MIX")
+ name="Diffuse ramp blend",
+ description="Blending method of the ramp and the diffuse color",
+ items=(("MIX", "Mix", ""),
+ ("ADD", "Add", ""),
+ ("MULTIPLY", "Multiply", ""),
+ ("SUBTRACT", "Subtract", ""),
+ ("SCREEN", "Screen", ""),
+ ("DIVIDE", "Divide", ""),
+ ("DIFFERENCE", "Difference", ""),
+ ("DARKEN", "Darken", ""),
+ ("LIGHTEN", "Lighten", ""),
+ ("OVERLAY", "Overlay", ""),
+ ("DODGE", "Dodge", ""),
+ ("BURN", "Burn", ""),
+ ("HUE", "Hue", ""),
+ ("SATURATION", "Saturation", ""),
+ ("VALUE", "Value", ""),
+ ("COLOR", "Color", ""),
+ ("SOFT_LIGHT", "Soft light", ""),
+ ("LINEAR_LIGHT", "Linear light", "")),
+ default="MIX",
+ )
diffuse_ramp_factor: FloatProperty(
- name="Factor",
- description="Blending factor (also uses alpha in Colorband)",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3)
-
+ name="Factor",
+ description="Blending factor (also uses alpha in Colorband)",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3,
+ )
+
diffuse_ramp_input: EnumProperty(
- name="Input",
- description="How the ramp maps on the surface",
- items=(("SHADER", "Shader", ""),
- ("ENERGY", "Energy", ""),
- ("NORMAL", "Normal", ""),
- ("RESULT", "Result", "")),
- default="SHADER")
-
+ name="Input",
+ description="How the ramp maps on the surface",
+ items=(("SHADER", "Shader", ""),
+ ("ENERGY", "Energy", ""),
+ ("NORMAL", "Normal", ""),
+ ("RESULT", "Result", "")),
+ default="SHADER",
+ )
+
diffuse_shader: EnumProperty(
- name="Diffuse Shader Model",
- description="How the ramp maps on the surface",
- items=(("LAMBERT", "Lambert", "Use a Lambertian shader"),
- ("OREN_NAYAR", "Oren-Nayar", "Use an Oren-Nayar shader"),
- ("MINNAERT", "Minnaert", "Use a Minnaert shader"),
- ("FRESNEL", "Fresnel", "Use a Fresnel shader")),
- default="LAMBERT")
+ name="Diffuse Shader Model",
+ description="How the ramp maps on the surface",
+ items=(("LAMBERT", "Lambert", "Use a Lambertian shader"),
+ ("OREN_NAYAR", "Oren-Nayar", "Use an Oren-Nayar shader"),
+ ("MINNAERT", "Minnaert", "Use a Minnaert shader"),
+ ("FRESNEL", "Fresnel", "Use a Fresnel shader")),
+ default="LAMBERT",
+ )
diffuse_toon_size: FloatProperty(
- name="Size",
- description="Size of diffuse toon area",
- min=0.0, max=3.14, soft_min=0.0, soft_max=3.14, default=0.5, precision=3)
-
+ name="Size",
+ description="Size of diffuse toon area",
+ min=0.0, max=3.14, soft_min=0.0, soft_max=3.14, default=0.5, precision=3,
+ )
+
diffuse_toon_smooth: FloatProperty(
- name="Smooth",
- description="Smoothness of diffuse toon area",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.1, precision=3)
+ name="Smooth",
+ description="Smoothness of diffuse toon area",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.1, precision=3,
+ )
emit: FloatProperty(
- name="Emit",
- description="Amount of light to emit",
- min=0.0, soft_min=0.0, #max=inf, soft_max=inf,
- default=0.0, precision=3)
+ name="Emit",
+ description="Amount of light to emit",
+ min=0.0, soft_min=0.0, # max=inf, soft_max=inf,
+ default=0.0, precision=3,
+ )
mirror_color: FloatVectorProperty(
- name="Mirror color",
- description=("Mirror color of the material"),
- precision=4, step=0.01, min=0, #max=inf, soft_max=1,
- default=(0.6,0.6,0.6), options={'ANIMATABLE'}, subtype='COLOR')
-
+ name="Mirror color",
+ description=("Mirror color of the material"),
+ precision=4, step=0.01, min=0, # max=inf, soft_max=1,
+ default=(0.6,0.6,0.6), options={'ANIMATABLE'}, subtype='COLOR'
+ )
+
roughness: FloatProperty(
- name="Roughness",
- description="Oren-Nayar Roughness",
- min=0.0, max=3.14, soft_min=0.0, soft_max=3.14, default=0.5, precision=3)
+ name="Roughness",
+ description="Oren-Nayar Roughness",
+ min=0.0, max=3.14, soft_min=0.0, soft_max=3.14,
+ precision=3,
+ default=0.5,
+ )
halo: BoolProperty(
- name="Halo", description=" Halo settings for the material",
- default=False)
- #(was readonly in Blender2.79, never None)
-
+ name="Halo",
+ description=" Halo settings for the material",
+ default=False,
+ )
+ # (was readonly in Blender2.79, never None)
+
line_color: FloatVectorProperty(
- name="Line color",
- description=("Line color used for Freestyle line rendering"),
- precision=4, step=0.01, min=0, #max=inf, soft_max=1,
- default=(0.0,0.0,0.0), options={'ANIMATABLE'}, subtype='COLOR')
-
- #diffuse_ramp:
- ##Color ramp used to affect diffuse shading
- ##Type: ColorRamp, (readonly)
-
- #cr_node = bpy.data.materials['Material'].node_tree.nodes['ColorRamp']
- #layout.template_color_ramp(cr_node, "color_ramp", expand=True)
-
- #ou
-
- #class bpy.types.ColorRamp(bpy_struct)
+ name="Line color",
+ description=("Line color used for Freestyle line rendering"),
+ precision=4, step=0.01, min=0, # max=inf, soft_max=1,
+ default=(0.0,0.0,0.0), options={'ANIMATABLE'}, subtype='COLOR'
+ )
+
+ # diffuse_ramp:
+ ## Color ramp used to affect diffuse shading
+ ## Type: ColorRamp, (readonly)
+
+ # cr_node = bpy.data.materials['Material'].node_tree.nodes['ColorRamp']
+ # layout.template_color_ramp(cr_node, "color_ramp", expand=True)
+
+ # ou
+
+ # class bpy.types.ColorRamp(bpy_struct)
line_priority: IntProperty(
- name="Recursion Limit",
- description="The line color of a higher priority is used at material boundaries",
- min=0, max=32767, default=0)
-
+ name="Recursion Limit",
+ description="The line color of a higher priority is used at material boundaries",
+ min=0, max=32767, default=0,
+ )
+
specular_color: FloatVectorProperty(
- name="Specular color",
- description=("Specular color of the material "),
- precision=4, step=0.01, min=0, #max=inf, soft_max=1,
- default=(1.0,1.0,1.0), options={'ANIMATABLE'}, subtype='COLOR')
+ name="Specular color",
+ description=("Specular color of the material "),
+ precision=4, step=0.01, min=0, # max=inf, soft_max=1,
+ default=(1.0,1.0,1.0), options={'ANIMATABLE'}, subtype='COLOR'
+ )
specular_hardness: IntProperty(
- name="Hardness",
- description="How hard (sharp) the specular reflection is",
- min=1, max=511, default=50)
-
+ name="Hardness",
+ description="How hard (sharp) the specular reflection is",
+ min=1, max=511, default=50,
+ )
+
specular_intensity: FloatProperty(
- name="Intensity",
- description="How intense (bright) the specular reflection is",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.5, precision=3)
+ name="Intensity",
+ description="How intense (bright) the specular reflection is",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.5, precision=3
+ )
specular_ior: FloatProperty(
- name="IOR",
- description="Specular index of refraction",
- min=-10.0, max=10.0, soft_min=0.0, soft_max=10.0, default=1.0, precision=3)
-
+ name="IOR",
+ description="Specular index of refraction",
+ min=-10.0, max=10.0, soft_min=0.0, soft_max=10.0, default=1.0, precision=3
+ )
+
ior: FloatProperty(
- name="IOR",
- description="Index of refraction",
- min=-10.0, max=10.0, soft_min=0.0, soft_max=10.0, default=1.0, precision=3)
+ name="IOR",
+ description="Index of refraction",
+ min=-10.0, max=10.0, soft_min=0.0, soft_max=10.0, default=1.0, precision=3
+ )
specular_shader: EnumProperty(
- name="Specular Shader Model",
- description="How the ramp maps on the surface",
- items=(("COOKTORR", "CookTorr", "Use a Cook-Torrance shader"),
- ("PHONG", "Phong", "Use a Phong shader"),
- ("BLINN", "Blinn", "Use a Blinn shader"),
- ("TOON", "Toon", "Use a Toon shader"),
- ("WARDISO", "WardIso", "Use a Ward anisotropic shader")),
- default="COOKTORR")
+ name="Specular Shader Model",
+ description="How the ramp maps on the surface",
+ items=(("COOKTORR", "CookTorr", "Use a Cook-Torrance shader"),
+ ("PHONG", "Phong", "Use a Phong shader"),
+ ("BLINN", "Blinn", "Use a Blinn shader"),
+ ("TOON", "Toon", "Use a Toon shader"),
+ ("WARDISO", "WardIso", "Use a Ward anisotropic shader")),
+ default="COOKTORR",
+ )
specular_slope: FloatProperty(
- name="Slope",
- description="The standard deviation of surface slope",
- min=0.0, max=0.4, soft_min=0.0, soft_max=0.4, default=0.1, precision=3)
+ name="Slope",
+ description="The standard deviation of surface slope",
+ min=0.0, max=0.4, soft_min=0.0, soft_max=0.4, default=0.1, precision=3
+ )
specular_toon_size: FloatProperty(
- name="Size",
- description="Size of specular toon area",
- min=0.0, max=0.53, soft_min=0.0, soft_max=0.53, default=0.5, precision=3)
+ name="Size",
+ description="Size of specular toon area",
+ min=0.0, max=0.53, soft_min=0.0, soft_max=0.53, default=0.5, precision=3
+ )
specular_toon_smooth: FloatProperty(
- name="Smooth",
- description="Smoothness of specular toon area",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.1, precision=3)
-
-
+ name="Smooth",
+ description="Smoothness of specular toon area",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.1, precision=3
+ )
+
+
translucency: FloatProperty(
- name="Translucency",
- description="Amount of diffuse shading on the back side",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.0, precision=3)
-
+ name="Translucency",
+ description="Amount of diffuse shading on the back side",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.0, precision=3
+ )
+
transparency_method: EnumProperty(
- name="Specular Shader Model",
- description="Method to use for rendering transparency",
- items=(("MASK", "Mask", "Mask the background"),
- ("Z_TRANSPARENCY", "Z Transparency", "Use an ior of 1 for transparent faces"),
- ("RAYTRACE", "Raytrace", "Use raytracing for transparent refraction rendering")),
- default="MASK")
-
+ name="Specular Shader Model",
+ description="Method to use for rendering transparency",
+ items=(("MASK", "Mask", "Mask the background"),
+ ("Z_TRANSPARENCY", "Z Transparency", "Use an ior of 1 for transparent faces"),
+ ("RAYTRACE", "Raytrace", "Use raytracing for transparent refraction rendering")),
+ default="MASK",
+ )
+
type: EnumProperty(
- name="Type",
- description="Material type defining how the object is rendered",
- items=(("SURFACE", "Surface", "Render object as a surface"),
- ("WIRE", "Wire", "Render the edges of faces as wires (not supported in raytracing)"),#TO UPDATE > USE MACRO AND CHANGE DESCRIPTION
- ("VOLUME", "Volume", "Render object as a volume"),
- ("‘HALO’", "Halo", "Render object as halo particles")), #TO UPDATE > USE MACRO AND CHANGE DESCRIPTION
- default="SURFACE")
-
+ name="Type",
+ description="Material type defining how the object is rendered",
+ items=(("SURFACE", "Surface", "Render object as a surface"),
+ ("WIRE", "Wire", "Render the edges of faces as wires (not supported in raytracing)"),# TO UPDATE > USE MACRO AND CHANGE DESCRIPTION
+ ("VOLUME", "Volume", "Render object as a volume"),
+ ("‘HALO’", "Halo", "Render object as halo particles")), # TO UPDATE > USE MACRO AND CHANGE DESCRIPTION
+ default="SURFACE",
+ )
+
use_cast_shadows: BoolProperty(
- name="Cast", description="Allow this material to cast shadows",
- default=True)
-
+ name="Cast",
+ description="Allow this material to cast shadows",
+ default=True,
+ )
+
use_cast_shadows_only: BoolProperty(
- name="Cast Only", description="Make objects with this material "
- "appear invisible (not rendered), only "
- "casting shadows",
- default=False)
-
+ name="Cast Only",
+ description="Make objects with this material "
+ "appear invisible (not rendered), only "
+ "casting shadows",
+ default=False,
+ )
+
use_cubic: BoolProperty(
- name="Cubic Interpolation", description="Use cubic interpolation for diffuse "
- "values, for smoother transitions",
- default=False)
+ name="Cubic Interpolation",
+ description="Use cubic interpolation for diffuse "
+ "values, for smoother transitions",
+ default=False,
+ )
use_diffuse_ramp: BoolProperty(
- name="Ramp", description="Toggle diffuse ramp operations",
- default=False)
-
+ name="Ramp",
+ description="Toggle diffuse ramp operations",
+ default=False,
+ )
+
use_light_group_exclusive: BoolProperty(
- name="Exclusive", description="Material uses the light group exclusively"
- "- these lamps are excluded from other "
- "scene lighting",
- default=False)
-
+ name="Exclusive",
+ description="Material uses the light group exclusively"
+ "- these lamps are excluded from other "
+ "scene lighting",
+ default=False,
+ )
+
use_light_group_local: BoolProperty(
- name="Local", description="When linked in, material uses local light"
- " group with the same name",
- default=False)
-
+ name="Local",
+ description="When linked in, material uses local light"
+ " group with the same name",
+ default=False,
+ )
+
use_mist: BoolProperty(
- name="Use Mist", description="Use mist with this material "
- "(in world settings)",
- default=True)
-
+ name="Use Mist",
+ description="Use mist with this material "
+ "(in world settings)",
+ default=True,
+ )
+
use_nodes: BoolProperty(
- name="Nodes", description="Use shader nodes to render the material",#Add Icon in UI or here? icon='NODES'
- default=False)
-
+ name="Nodes",
+ description="Use shader nodes to render the material",# Add Icon in UI or here? icon='NODES'
+ default=False,
+ )
+
use_object_color: BoolProperty(
- name="Object Color", description="Modulate the result with a per-object color",
- default=False)
-
+ name="Object Color",
+ description="Modulate the result with a per-object color",
+ default=False,
+ )
+
use_only_shadow: BoolProperty(
- name="Shadows Only", description="Render shadows as the material’s alpha "
- "value, making the material transparent "
- "except for shadowed areas",
- default=False)
-
+ name="Shadows Only",
+ description="Render shadows as the material’s alpha "
+ "value, making the material transparent "
+ "except for shadowed areas",
+ default=False,
+ )
+
use_shadeless: BoolProperty(
- name="Shadeless", description="Make this material insensitive to "
- "light or shadow",
- default=False)
-
+ name="Shadeless",
+ description="Make this material insensitive to "
+ "light or shadow",
+ default=False,
+ )
+
use_shadows: BoolProperty(
- name="Receive", description="Allow this material to receive shadows",
- default=True)
+ name="Receive",
+ description="Allow this material to receive shadows",
+ default=True,
+ )
use_sky: BoolProperty(
- name="Sky", description="Render this material with zero alpha, "
- "with sky background in place (scanline only)",
- default=False)
-
+ name="Sky",
+ description="Render this material with zero alpha, "
+ "with sky background in place (scanline only)",
+ default=False,
+ )
+
use_specular_ramp: BoolProperty(
- name="Ramp", description="Toggle specular ramp operations",
- default=False)
-
+ name="Ramp",
+ description="Toggle specular ramp operations",
+ default=False,
+ )
+
use_tangent_shading: BoolProperty(
- name="Tangent Shading", description="Use the material’s tangent vector instead"
- "of the normal for shading - for "
- "anisotropic shading effects",
- default=False)
-
+ name="Tangent Shading",
+ description="Use the material’s tangent vector instead"
+ "of the normal for shading - for "
+ "anisotropic shading effects",
+ default=False,
+ )
+
use_transparent_shadows: BoolProperty(
- name="Receive Transparent", description="Allow this object to receive transparent "
- "shadows cast through other object",
- default=False) #linked to fake caustics
-
+ name="Receive Transparent",
+ description="Allow this object to receive transparent "
+ "shadows cast through other object",
+ default=False,
+ ) # linked to fake caustics
+
use_vertex_color_light: BoolProperty(
- name="Vertex Color Light", description="Add vertex colors as additional lighting",
- default=False)
-
+ name="Vertex Color Light",
+ description="Add vertex colors as additional lighting",
+ default=False,
+ )
+
use_vertex_color_paint: BoolProperty(
- name="Vertex Color Paint", description="Replace object base color with vertex "
- "colors (multiply with ‘texture face’ "
- "face assigned textures)",
- default=False)
+ name="Vertex Color Paint", description="Replace object base color with vertex "
+ "colors (multiply with ‘texture face’ "
+ "face assigned textures)",
+ default=False,
+ )
+
-
specular_ramp_blend: EnumProperty(
- name="Specular ramp blend",
- description="Blending method of the ramp and the specular color",
- items=(("MIX", "Mix", ""),
- ("ADD", "Add", ""),
- ("MULTIPLY", "Multiply", ""),
- ("SUBTRACT", "Subtract", ""),
- ("SCREEN", "Screen", ""),
- ("DIVIDE", "Divide", ""),
- ("DIFFERENCE", "Difference", ""),
- ("DARKEN", "Darken", ""),
- ("LIGHTEN", "Lighten", ""),
- ("OVERLAY", "Overlay", ""),
- ("DODGE", "Dodge", ""),
- ("BURN", "Burn", ""),
- ("HUE", "Hue", ""),
- ("SATURATION", "Saturation", ""),
- ("VALUE", "Value", ""),
- ("COLOR", "Color", ""),
- ("SOFT_LIGHT", "Soft light", ""),
- ("LINEAR_LIGHT", "Linear light", "")),
- default="MIX")
+ name="Specular ramp blend",
+ description="Blending method of the ramp and the specular color",
+ items=(("MIX", "Mix", ""),
+ ("ADD", "Add", ""),
+ ("MULTIPLY", "Multiply", ""),
+ ("SUBTRACT", "Subtract", ""),
+ ("SCREEN", "Screen", ""),
+ ("DIVIDE", "Divide", ""),
+ ("DIFFERENCE", "Difference", ""),
+ ("DARKEN", "Darken", ""),
+ ("LIGHTEN", "Lighten", ""),
+ ("OVERLAY", "Overlay", ""),
+ ("DODGE", "Dodge", ""),
+ ("BURN", "Burn", ""),
+ ("HUE", "Hue", ""),
+ ("SATURATION", "Saturation", ""),
+ ("VALUE", "Value", ""),
+ ("COLOR", "Color", ""),
+ ("SOFT_LIGHT", "Soft light", ""),
+ ("LINEAR_LIGHT", "Linear light", "")),
+ default="MIX",
+ )
specular_ramp_factor: FloatProperty(
- name="Factor",
- description="Blending factor (also uses alpha in Colorband)",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3)
-
+ name="Factor",
+ description="Blending factor (also uses alpha in Colorband)",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3,
+ )
+
specular_ramp_input: EnumProperty(
- name="Input",
- description="How the ramp maps on the surface",
- items=(("SHADER", "Shader", ""),
- ("ENERGY", "Energy", ""),
- ("NORMAL", "Normal", ""),
- ("RESULT", "Result", "")),
- default="SHADER")
+ name="Input",
+ description="How the ramp maps on the surface",
+ items=(("SHADER", "Shader", ""),
+ ("ENERGY", "Energy", ""),
+ ("NORMAL", "Normal", ""),
+ ("RESULT", "Result", "")),
+ default="SHADER",
+ )
irid_enable: BoolProperty(
- name="Iridescence coating",
- description="Newton's thin film interference (like an oil slick on a puddle of "
- "water or the rainbow hues of a soap bubble.)",
- default=False)
+ name="Iridescence coating",
+ description="Newton's thin film interference (like an oil slick on a puddle of "
+ "water or the rainbow hues of a soap bubble.)",
+ default=False,
+ )
mirror_use_IOR: BoolProperty(
- name="Correct Reflection",
- description="Use same IOR as raytrace transparency to calculate mirror reflections. "
- "More physically correct",
- default=False)
+ name="Correct Reflection",
+ description="Use same IOR as raytrace transparency to calculate mirror reflections. "
+ "More physically correct",
+ default=False,
+ )
mirror_metallic: BoolProperty(
- name="Metallic Reflection",
- description="mirror reflections get colored as diffuse (for metallic materials)",
- default=False)
+ name="Metallic Reflection",
+ description="mirror reflections get colored as diffuse (for metallic materials)",
+ default=False,
+ )
conserve_energy: BoolProperty(
- name="Conserve Energy",
- description="Light transmitted is more correctly reduced by mirror reflections, "
- "also the sum of diffuse and translucency gets reduced below one ",
- default=True)
+ name="Conserve Energy",
+ description="Light transmitted is more correctly reduced by mirror reflections, "
+ "also the sum of diffuse and translucency gets reduced below one ",
+ default=True,
+ )
irid_amount: FloatProperty(
- name="amount",
- description="Contribution of the iridescence effect to the overall surface color. "
- "As a rule of thumb keep to around 0.25 (25% contribution) or less, "
- "but experiment. If the surface is coming out too white, try lowering "
- "the diffuse and possibly the ambient values of the surface",
- min=0.0, max=1.0, soft_min=0.01, soft_max=1.0, default=0.25)
+ name="amount",
+ description="Contribution of the iridescence effect to the overall surface color. "
+ "As a rule of thumb keep to around 0.25 (25% contribution) or less, "
+ "but experiment. If the surface is coming out too white, try lowering "
+ "the diffuse and possibly the ambient values of the surface",
+ min=0.0, max=1.0, soft_min=0.01, soft_max=1.0, default=0.25,
+ )
irid_thickness: FloatProperty(
- name="thickness",
- description="A very thin film will have a high frequency of color changes while a "
- "thick film will have large areas of color",
- min=0.0, max=1000.0, soft_min=0.1, soft_max=10.0, default=1)
+ name="thickness",
+ description="A very thin film will have a high frequency of color changes while a "
+ "thick film will have large areas of color",
+ min=0.0, max=1000.0, soft_min=0.1, soft_max=10.0, default=1,
+ )
irid_turbulence: FloatProperty(
- name="turbulence", description="This parameter varies the thickness",
- min=0.0, max=10.0, soft_min=0.000, soft_max=1.0, default=0)
+ name="turbulence",
+ description="This parameter varies the thickness",
+ min=0.0, max=10.0, soft_min=0.000, soft_max=1.0, default=0
+ )
interior_fade_color: FloatVectorProperty(
- name="Interior Fade Color", description="Color of filtered attenuation for transparent "
- "materials",
- precision=4, step=0.01, min=0.0, soft_max=1.0,
- default=(0, 0, 0), options={'ANIMATABLE'}, subtype='COLOR')
+ name="Interior Fade Color",
+ description="Color of filtered attenuation for transparent "
+ "materials",
+ precision=4, step=0.01, min=0.0, soft_max=1.0,
+ default=(0, 0, 0), options={'ANIMATABLE'}, subtype='COLOR'
+ )
caustics_enable: BoolProperty(
- name="Caustics",
- description="use only fake refractive caustics (default) or photon based "
- "reflective/refractive caustics",
- default=True)
+ name="Caustics",
+ description="use only fake refractive caustics (default) or photon based "
+ "reflective/refractive caustics",
+ default=True,
+ )
fake_caustics: BoolProperty(
- name="Fake Caustics", description="use only (Fast) fake refractive caustics",
- default=True)
+ name="Fake Caustics",
+ description="use only (Fast) fake refractive caustics",
+ default=True,
+ )
fake_caustics_power: FloatProperty(
- name="Fake caustics power",
- description="Values typically range from 0.0 to 1.0 or higher. Zero is no caustics. "
- "Low, non-zero values give broad hot-spots while higher values give "
- "tighter, smaller simulated focal points",
- min=0.00, max=10.0, soft_min=0.00, soft_max=5.0, default=0.15)
+ name="Fake caustics power",
+ description="Values typically range from 0.0 to 1.0 or higher. Zero is no caustics. "
+ "Low, non-zero values give broad hot-spots while higher values give "
+ "tighter, smaller simulated focal points",
+ min=0.00, max=10.0, soft_min=0.00, soft_max=5.0, default=0.15
+ )
refraction_caustics: BoolProperty(
- name="Refractive Caustics", description="hotspots of light focused when going through the material",
- default=True)
+ name="Refractive Caustics",
+ description="hotspots of light focused when going through the material",
+ default=True,
+ )
photons_dispersion: FloatProperty(
- name="Chromatic Dispersion",
- description="Light passing through will be separated according to wavelength. "
- "This ratio of refractive indices for violet to red controls how much "
- "the colors are spread out 1 = no dispersion, good values are 1.01 to 1.1",
- min=1.0000, max=10.000, soft_min=1.0000, soft_max=1.1000, precision=4, default=1.0000)
+ name="Chromatic Dispersion",
+ description="Light passing through will be separated according to wavelength. "
+ "This ratio of refractive indices for violet to red controls how much "
+ "the colors are spread out 1 = no dispersion, good values are 1.01 to 1.1",
+ min=1.0000, max=10.000, soft_min=1.0000, soft_max=1.1000, precision=4,
+ default=1.0000,
+ )
photons_dispersion_samples: IntProperty(
- name="Dispersion Samples", description="Number of color-steps for dispersion",
- min=2, max=128, default=7)
+ name="Dispersion Samples",
+ description="Number of color-steps for dispersion",
+ min=2, max=128, default=7,
+ )
photons_reflection: BoolProperty(
- name="Reflective Photon Caustics",
- description="Use this to make your Sauron's ring ;-P",
- default=False)
+ name="Reflective Photon Caustics",
+ description="Use this to make your Sauron's ring ;-P",
+ default=False,
+ )
refraction_type: EnumProperty(
- items=[
- ("1", "Z Transparency Fake Caustics", "use fake caustics"),
- ("2", "Raytrace Photons Caustics", "use photons for refractive caustics")],
- name="Refraction Type:",
- description="use fake caustics (fast) or true photons for refractive Caustics",
- default="1")
+ items=[
+ ("1", "Z Transparency Fake Caustics", "use fake caustics"),
+ ("2", "Raytrace Photons Caustics", "use photons for refractive caustics")],
+ name="Refraction Type:",
+ description="use fake caustics (fast) or true photons for refractive Caustics",
+ default="1",
+ )
##################################CustomPOV Code############################
replacement_text: StringProperty(
- name="Declared name:",
- description="Type the declared name in custom POV code or an external "
- ".inc it points at. texture {} expected",
- default="")
-
+ name="Declared name:",
+ description="Type the declared name in custom POV code or an external "
+ ".inc it points at. texture {} expected",
+ default="",
+ )
# NODES
@@ -1626,268 +1981,354 @@ class RenderPovSettingsMaterial(PropertyGroup):
else:
ob.pov.mesh_write_as = ob.pov.mesh_write_as_old
- material_use_nodes: BoolProperty(name="Use nodes", description="", update=use_material_nodes_callback, default=False)
- material_active_node: EnumProperty(name="Active node", description="", items=node_enum_callback, update=node_active_callback)
- preview_settings: BoolProperty(name="Preview Settings", description="",default=False)
- object_preview_transform: BoolProperty(name="Transform object", description="",default=False)
- object_preview_scale: FloatProperty(name="XYZ", min=0.5, max=2.0, default=1.0)
- object_preview_rotate: FloatVectorProperty(name="Rotate", description="", min=-180.0, max=180.0,default=(0.0,0.0,0.0), subtype='XYZ')
- object_preview_bgcontrast: FloatProperty(name="Contrast", min=0.0, max=1.0, default=0.5)
+ material_use_nodes: BoolProperty(
+ name="Use nodes",
+ description="",
+ update=use_material_nodes_callback,
+ default=False,
+ )
+
+ material_active_node: EnumProperty(
+ name="Active node",
+ description="",
+ items=node_enum_callback,
+ update=node_active_callback
+ )
+
+ preview_settings: BoolProperty(
+ name="Preview Settings",
+ description="",
+ default=False,
+ )
+
+ object_preview_transform: BoolProperty(
+ name="Transform object",
+ description="",
+ default=False,
+ )
+
+ object_preview_scale: FloatProperty(
+ name="XYZ",
+ min=0.5,
+ max=2.0,
+ default=1.0,
+ )
+
+ object_preview_rotate: FloatVectorProperty(
+ name="Rotate",
+ description="",
+ min=-180.0,
+ max=180.0,
+ default=(0.0,0.0,0.0),
+ subtype='XYZ',
+ )
+
+ object_preview_bgcontrast: FloatProperty(
+ name="Contrast",
+ min=0.0,
+ max=1.0,
+ default=0.5,
+ )
+
class MaterialRaytraceTransparency(PropertyGroup):
"""Declare transparency panel properties controllable in UI and translated to POV."""
-
+
depth: IntProperty(
- name="Depth",
- description="Maximum allowed number of light inter-refractions",
- min=0, max=32767, default=2)
-
+ name="Depth",
+ description="Maximum allowed number of light inter-refractions",
+ min=0, max=32767, default=2
+ )
+
depth_max: FloatProperty(
- name="Depth",
- description="Maximum depth for light to travel through the "
- "transparent material before becoming fully filtered (0.0 is disabled)",
- min=0, max=100, default=0.0)
-
+ name="Depth",
+ description="Maximum depth for light to travel through the "
+ "transparent material before becoming fully filtered (0.0 is disabled)",
+ min=0, max=100, default=0.0,
+ )
+
falloff: FloatProperty(
- name="Falloff",
- description="Falloff power for transmissivity filter effect (1.0 is linear)",
- min=0.1, max=10.0, default=1.0, precision=3)
+ name="Falloff",
+ description="Falloff power for transmissivity filter effect (1.0 is linear)",
+ min=0.1, max=10.0, default=1.0, precision=3
+ )
+
filter: FloatProperty(
- name="Filter",
- description="Amount to blend in the material’s diffuse color in raytraced "
- "transparency (simulating absorption)",
- min=0.0, max=1.0, default=0.0, precision=3)
+ name="Filter",
+ description="Amount to blend in the material’s diffuse color in raytraced "
+ "transparency (simulating absorption)",
+ min=0.0, max=1.0, default=0.0, precision=3
+ )
fresnel: FloatProperty(
- name="Fresnel",
- description="Power of Fresnel for transparency (Ray or ZTransp)",
- min=0.0, max=5.0, soft_min=0.0, soft_max=5.0, default=0.0, precision=3)
+ name="Fresnel",
+ description="Power of Fresnel for transparency (Ray or ZTransp)",
+ min=0.0, max=5.0, soft_min=0.0, soft_max=5.0, default=0.0, precision=3
+ )
fresnel_factor: FloatProperty(
- name="Blend",
- description="Blending factor for Fresnel",
- min=0.0, max=5.0, soft_min=0.0, soft_max=5.0, default=1.250, precision=3)
-
+ name="Blend",
+ description="Blending factor for Fresnel",
+ min=0.0, max=5.0, soft_min=0.0, soft_max=5.0, default=1.250, precision=3
+ )
+
gloss_factor: FloatProperty(
- name="Amount",
- description="The clarity of the refraction. "
- "(values < 1.0 give diffuse, blurry refractions)",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3)
+ name="Amount",
+ description="The clarity of the refraction. "
+ "(values < 1.0 give diffuse, blurry refractions)",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3
+ )
gloss_samples: IntProperty(
- name="Samples",
- description="Number of cone samples averaged for blurry refractions",
- min=0, max=1024, default=18)
+ name="Samples",
+ description="Number of cone samples averaged for blurry refractions",
+ min=0, max=1024, default=18
+ )
gloss_threshold: FloatProperty(
- name="Threshold",
- description="Threshold for adaptive sampling (if a sample "
- "contributes less than this amount [as a percentage], "
- "sampling is stopped)",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.005, precision=3)
+ name="Threshold",
+ description="Threshold for adaptive sampling (if a sample "
+ "contributes less than this amount [as a percentage], "
+ "sampling is stopped)",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.005, precision=3
+ )
ior: FloatProperty(
- name="IOR", description="Sets angular index of refraction for raytraced refraction",
- min=-0.0, max=10.0, soft_min=0.25, soft_max=4.0, default=1.3)
-
+ name="IOR",
+ description="Sets angular index of refraction for raytraced refraction",
+ min=-0.0, max=10.0, soft_min=0.25, soft_max=4.0, default=1.3
+ )
+
class MaterialRaytraceMirror(PropertyGroup):
"""Declare reflection panel properties controllable in UI and translated to POV."""
- bl_description = "Raytraced reflection settings for the Material",
+ bl_description = "Raytraced reflection settings for the Material",
+
use: BoolProperty(
- name="Mirror",
- description="Enable raytraced reflections",
- default=False)
-
+ name="Mirror",
+ description="Enable raytraced reflections",
+ default=False,
+ )
+
depth: IntProperty(
- name="Depth",
- description="Maximum allowed number of light inter-reflections",
- min=0, max=32767, default=2)
+ name="Depth",
+ description="Maximum allowed number of light inter-reflections",
+ min=0, max=32767, default=2
+ )
distance: FloatProperty(
- name="Max Dist",
- description="Maximum distance of reflected rays "
- "(reflections further than this range "
- "fade to sky color or material color)",
- min=0.0, max=100000.0, soft_min=0.0, soft_max=10000.0, default=0.0, precision=3)
+ name="Max Dist",
+ description="Maximum distance of reflected rays "
+ "(reflections further than this range "
+ "fade to sky color or material color)",
+ min=0.0, max=100000.0, soft_min=0.0, soft_max=10000.0, default=0.0, precision=3
+ )
fade_to: EnumProperty(
- items=[
- ("FADE_TO_SKY", "Fade to sky", ""),
- ("FADE_TO_MATERIAL", "Fade to material color", "")],
- name="Fade-out Color",
- description="The color that rays with no intersection within the "
- "Max Distance take (material color can be best for "
- "indoor scenes, sky color for outdoor)",
- default="FADE_TO_SKY")
+ items=[
+ ("FADE_TO_SKY", "Fade to sky", ""),
+ ("FADE_TO_MATERIAL", "Fade to material color", "")],
+ name="Fade-out Color",
+ description="The color that rays with no intersection within the "
+ "Max Distance take (material color can be best for "
+ "indoor scenes, sky color for outdoor)",
+ default="FADE_TO_SKY",
+ )
fresnel: FloatProperty(
- name="Fresnel",
- description="Power of Fresnel for mirror reflection",
- min=0.0, max=5.0, soft_min=0.0, soft_max=5.0, default=0.0, precision=3)
+ name="Fresnel",
+ description="Power of Fresnel for mirror reflection",
+ min=0.0, max=5.0, soft_min=0.0, soft_max=5.0, default=0.0, precision=3,
+ )
fresnel_factor: FloatProperty(
- name="Blend",
- description="Blending factor for Fresnel",
- min=0.0, max=5.0, soft_min=0.0, soft_max=5.0, default=1.250, precision=3)
+ name="Blend",
+ description="Blending factor for Fresnel",
+ min=0.0, max=5.0, soft_min=0.0, soft_max=5.0, default=1.250, precision=3
+ )
gloss_anisotropic: FloatProperty(
- name="Anisotropic",
- description="The shape of the reflection, from 0.0 (circular) "
- "to 1.0 (fully stretched along the tangent",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3)
+ name="Anisotropic",
+ description="The shape of the reflection, from 0.0 (circular) "
+ "to 1.0 (fully stretched along the tangent",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3
+ )
gloss_factor: FloatProperty(
- name="Amount",
- description="The shininess of the reflection "
- "(values < 1.0 give diffuse, blurry reflections)",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3)
+ name="Amount",
+ description="The shininess of the reflection "
+ "(values < 1.0 give diffuse, blurry reflections)",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3
+ )
gloss_samples: IntProperty(
- name="Samples",
- description="Number of cone samples averaged for blurry reflections",
- min=0, max=1024, default=18)
+ name="Samples",
+ description="Number of cone samples averaged for blurry reflections",
+ min=0, max=1024, default=18,
+ )
gloss_threshold: FloatProperty(
- name="Threshold",
- description="Threshold for adaptive sampling (if a sample "
- "contributes less than this amount [as a percentage], "
- "sampling is stopped)",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.005, precision=3)
+ name="Threshold",
+ description="Threshold for adaptive sampling (if a sample "
+ "contributes less than this amount [as a percentage], "
+ "sampling is stopped)",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.005, precision=3
+ )
mirror_color: FloatVectorProperty(
- name="Mirror color",
- description=("Mirror color of the material"),
- precision=4, step=0.01,
- default=(1.0,1.0,1.0), options={'ANIMATABLE'}, subtype='COLOR')
-
+ name="Mirror color",
+ description=("Mirror color of the material"),
+ precision=4, step=0.01,
+ default=(1.0,1.0,1.0), options={'ANIMATABLE'}, subtype='COLOR'
+ )
+
reflect_factor: FloatProperty(
- name="Reflectivity",
- description="Amount of mirror reflection for raytrace",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3)
-
+ name="Reflectivity",
+ description="Amount of mirror reflection for raytrace",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3
+ )
+
+
class MaterialSubsurfaceScattering(PropertyGroup):
r"""Declare SSS/SSTL properties controllable in UI and translated to POV."""
- bl_description = "Subsurface scattering settings for the material",
+ bl_description = "Subsurface scattering settings for the material",
use: BoolProperty(
- name="Subsurface Scattering",
- description="Enable diffuse subsurface scatting "
- "effects in a material",
- default=False)
+ name="Subsurface Scattering",
+ description="Enable diffuse subsurface scatting "
+ "effects in a material",
+ default=False,
+ )
-
-
back: FloatProperty(
- name="Back",
- description="Back scattering weight",
- min=0.0, max=10.0, soft_min=0.0, soft_max=10.0, default=1.0, precision=3)
-
+ name="Back",
+ description="Back scattering weight",
+ min=0.0, max=10.0, soft_min=0.0, soft_max=10.0, default=1.0, precision=3
+ )
color: FloatVectorProperty(
- name="Scattering color",
- description=("Scattering color"),
- precision=4, step=0.01,
- default=(0.604,0.604,0.604), options={'ANIMATABLE'}, subtype='COLOR')
+ name="Scattering color",
+ description=("Scattering color"),
+ precision=4, step=0.01,
+ default=(0.604,0.604,0.604), options={'ANIMATABLE'}, subtype='COLOR'
+ )
color_factor: FloatProperty(
- name="Color",
- description="Blend factor for SSS colors",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3)
+ name="Color",
+ description="Blend factor for SSS colors",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=1.0, precision=3
+ )
error_threshold: FloatProperty(
- name="Error",
- description="Error tolerance (low values are slower and higher quality)",
- default=0.050, precision=3)
+ name="Error",
+ description="Error tolerance (low values are slower and higher quality)",
+ default=0.050, precision=3
+ )
front: FloatProperty(
- name="Front",
- description="Front scattering weight",
- min=0.0, max=2.0, soft_min=0.0, soft_max=2.0, default=1.0, precision=3)
+ name="Front",
+ description="Front scattering weight",
+ min=0.0, max=2.0, soft_min=0.0, soft_max=2.0, default=1.0, precision=3
+ )
ior: FloatProperty(
- name="IOR", description="Index of refraction (higher values are denser)",
- min=-0.0, max=10.0, soft_min=0.1, soft_max=2.0, default=1.3)
+ name="IOR",
+ description="Index of refraction (higher values are denser)",
+ min=-0.0, max=10.0, soft_min=0.1, soft_max=2.0, default=1.3
+ )
radius: FloatVectorProperty(
- name="RGB Radius",
- description=("Mean red/green/blue scattering path length"),
- precision=4, step=0.01, min=0.001,
- default=(1.0,1.0,1.0), options={'ANIMATABLE'})
+ name="RGB Radius",
+ description=("Mean red/green/blue scattering path length"),
+ precision=4, step=0.01, min=0.001,
+ default=(1.0,1.0,1.0), options={'ANIMATABLE'}
+ )
scale: FloatProperty(
- name="Scale",
- description="Object scale factor",
- default=0.100, precision=3)
+ name="Scale",
+ description="Object scale factor",
+ default=0.100, precision=3
+ )
texture_factor: FloatProperty(
- name="Texture",
- description="Texture scattering blend factor",
- min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.0, precision=3)
+ name="Texture",
+ description="Texture scattering blend factor",
+ min=0.0, max=1.0, soft_min=0.0, soft_max=1.0, default=0.0, precision=3
+ )
+
class MaterialStrandSettings(PropertyGroup):
"""Declare strand properties controllable in UI and translated to POV."""
- bl_description = "Strand settings for the material",
+ bl_description = "Strand settings for the material",
blend_distance: FloatProperty(
- name="Distance",
- description="Worldspace distance over which to blend in the surface normal",
- min=0.0, max=10.0, soft_min=0.0, soft_max=10.0, default=0.0, precision=3)
+ name="Distance",
+ description="Worldspace distance over which to blend in the surface normal",
+ min=0.0, max=10.0, soft_min=0.0, soft_max=10.0, default=0.0, precision=3
+ )
root_size: FloatProperty(
- name="Root",
- description="Start size of strands in pixels or Blender units",
- min=0.25, default=1.0, precision=5)
+ name="Root",
+ description="Start size of strands in pixels or Blender units",
+ min=0.25, default=1.0, precision=5
+ )
shape: FloatProperty(
- name="Shape",
- description="Positive values make strands rounder, negative ones make strands spiky",
- min=-0.9, max=0.9, default=0.0, precision=3)
+ name="Shape",
+ description="Positive values make strands rounder, negative ones make strands spiky",
+ min=-0.9, max=0.9, default=0.0, precision=3
+ )
size_min: FloatProperty(
- name="Minimum",
- description="Minimum size of strands in pixels",
- min=0.001, max=10.0, default=1.0, precision=3)
+ name="Minimum",
+ description="Minimum size of strands in pixels",
+ min=0.001, max=10.0, default=1.0, precision=3
+ )
tip_size: FloatProperty(
- name="Tip",
- description="End size of strands in pixels or Blender units",
- min=0.0, default=1.0, precision=5)
+ name="Tip",
+ description="End size of strands in pixels or Blender units",
+ min=0.0, default=1.0, precision=5
+ )
use_blender_units: BoolProperty(
- name="Blender Units",
- description="Use Blender units for widths instead of pixels",
- default=False)
+ name="Blender Units",
+ description="Use Blender units for widths instead of pixels",
+ default=False,
+ )
use_surface_diffuse: BoolProperty(
- name="Surface diffuse",
- description="Make diffuse shading more similar to shading the surface",
- default=False)
+ name="Surface diffuse",
+ description="Make diffuse shading more similar to shading the surface",
+ default=False,
+ )
use_tangent_shading: BoolProperty(
- name="Tangent Shading",
- description="Use direction of strands as normal for tangent-shading",
- default=True)
+ name="Tangent Shading",
+ description="Use direction of strands as normal for tangent-shading",
+ default=True,
+ )
uv_layer: StringProperty(
- name="UV Layer",
- #icon="GROUP_UVS",
- description="Name of UV map to override",
- default="")
+ name="UV Layer",
+ # icon="GROUP_UVS",
+ description="Name of UV map to override",
+ default="",
+ )
width_fade: FloatProperty(
- name="Width Fade",
- description="Transparency along the width of the strand",
- min=0.0, max=2.0, default=0.0, precision=3)
+ name="Width Fade",
+ description="Transparency along the width of the strand",
+ min=0.0, max=2.0, default=0.0, precision=3
+ )
-
# halo
# Halo settings for the material
- # Type: MaterialHalo, (readonly, never None)
+ # Type: MaterialHalo, (readonly, never None)
# ambient
@@ -2342,8 +2783,8 @@ class MaterialStrandSettings(PropertyGroup):
# Volume settings for the material
# Type: MaterialVolume, (readonly, never None)
- '''
- (mat.type in {'SURFACE', 'WIRE', 'VOLUME'})
+ '''
+ (mat.type in {'SURFACE', 'WIRE', 'VOLUME'})
"use_transparency")
@@ -2372,7 +2813,7 @@ class MaterialStrandSettings(PropertyGroup):
col.prop(mat, "diffuse_color", text="")
sub.active = (not mat.use_shadeless)
-
+
sub.prop(mat, "diffuse_intensity", text="Intensity")
@@ -2394,9 +2835,9 @@ class MaterialStrandSettings(PropertyGroup):
row.prop(mat, "diffuse_fresnel_factor", text="Factor")
if mat.use_diffuse_ramp:
-
+
col.template_color_ramp(mat, "diffuse_ramp", expand=True)
-
+
row.prop(mat, "diffuse_ramp_input", text="Input")
@@ -2739,6 +3180,7 @@ class MaterialStrandSettings(PropertyGroup):
###############################################################################
# Povray Nodes
###############################################################################
+
class PovraySocketUniversal(bpy.types.NodeSocket):
bl_idname = 'PovraySocketUniversal'
bl_label = 'Povray Socket'
@@ -3181,522 +3623,598 @@ node_categories = [
###############################################################################
# Texture POV properties.
###############################################################################
+
class RenderPovSettingsTexture(PropertyGroup):
"""Declare texture level properties controllable in UI and translated to POV."""
-
- #former Space properties from removed Blender Internal
+
+ # former Space properties from removed Blender Internal
active_texture_index: IntProperty(
- name = "Index for texture_slots",
- default = 0)
+ name = "Index for texture_slots",
+ default = 0,
+ )
+
use_limited_texture_context: BoolProperty(
- name="",
- description="Use the limited version of texture user (for ‘old shading’ mode)",
- default=True)
+ name="",
+ description="Use the limited version of texture user (for ‘old shading’ mode)",
+ default=True,
+ )
+
texture_context: EnumProperty(
- name="Texture context",
- description="Type of texture data to display and edit",
- items=(('MATERIAL', "", "Show material textures", "MATERIAL",0), #"Show material textures"
- ('WORLD', "", "Show world textures", "WORLD",1), #"Show world textures"
- ('LAMP', "", "Show lamp textures", "LIGHT",2), #"Show lamp textures"
- ('PARTICLES', "", "Show particles textures", "PARTICLES",3), #"Show particles textures"
- ('LINESTYLE', "", "Show linestyle textures", "LINE_DATA",4), #"Show linestyle textures"
- ('OTHER', "", "Show other data textures", "TEXTURE_DATA",5)), #"Show other data textures"
- default = 'MATERIAL')
-
- #Custom texture gamma
+ name="Texture context",
+ description="Type of texture data to display and edit",
+ items=(('MATERIAL', "", "Show material textures", "MATERIAL",0), # "Show material textures"
+ ('WORLD', "", "Show world textures", "WORLD",1), # "Show world textures"
+ ('LAMP', "", "Show lamp textures", "LIGHT",2), # "Show lamp textures"
+ ('PARTICLES', "", "Show particles textures", "PARTICLES",3), # "Show particles textures"
+ ('LINESTYLE', "", "Show linestyle textures", "LINE_DATA",4), # "Show linestyle textures"
+ ('OTHER', "", "Show other data textures", "TEXTURE_DATA",5)), # "Show other data textures"
+ default = 'MATERIAL',
+ )
+
+ # Custom texture gamma
tex_gamma_enable: BoolProperty(
- name="Enable custom texture gamma",
- description="Notify some custom gamma for which texture has been precorrected "
- "without the file format carrying it and only if it differs from your "
- "OS expected standard (see pov doc)",
- default=False)
+ name="Enable custom texture gamma",
+ description="Notify some custom gamma for which texture has been precorrected "
+ "without the file format carrying it and only if it differs from your "
+ "OS expected standard (see pov doc)",
+ default=False,
+ )
tex_gamma_value: FloatProperty(
- name="Custom texture gamma",
- description="value for which the file was issued e.g. a Raw photo is gamma 1.0",
- min=0.45, max=5.00, soft_min=1.00, soft_max=2.50, default=1.00)
+ name="Custom texture gamma",
+ description="value for which the file was issued e.g. a Raw photo is gamma 1.0",
+ min=0.45, max=5.00, soft_min=1.00, soft_max=2.50, default=1.00
+ )
##################################CustomPOV Code############################
- #commented out below if we wanted custom pov code in texture only, inside exported material:
- #replacement_text = StringProperty(
+ # commented out below if we wanted custom pov code in texture only, inside exported material:
+ # replacement_text = StringProperty(
# name="Declared name:",
# description="Type the declared name in custom POV code or an external .inc "
# "it points at. pigment {} expected",
# default="")
-
-
tex_pattern_type: EnumProperty(
- name="Texture_Type",
- description="Choose between Blender or POV parameters to specify texture",
- items= (('agate', 'Agate', '','PLUGIN', 0),
- ('aoi', 'Aoi', '', 'PLUGIN', 1),
- ('average', 'Average', '', 'PLUGIN', 2),
- ('boxed', 'Boxed', '', 'PLUGIN', 3),
- ('bozo', 'Bozo', '', 'PLUGIN', 4),
- ('bumps', 'Bumps', '', 'PLUGIN', 5),
- ('cells', 'Cells', '', 'PLUGIN', 6),
- ('crackle', 'Crackle', '', 'PLUGIN', 7),
- ('cubic', 'Cubic', '', 'PLUGIN', 8),
- ('cylindrical', 'Cylindrical', '', 'PLUGIN', 9),
- ('density_file', 'Density', '(.df3)', 'PLUGIN', 10),
- ('dents', 'Dents', '', 'PLUGIN', 11),
- ('fractal', 'Fractal', '', 'PLUGIN', 12),
- ('function', 'Function', '', 'PLUGIN', 13),
- ('gradient', 'Gradient', '', 'PLUGIN', 14),
- ('granite', 'Granite', '', 'PLUGIN', 15),
- ('image_pattern', 'Image pattern', '', 'PLUGIN', 16),
- ('leopard', 'Leopard', '', 'PLUGIN', 17),
- ('marble', 'Marble', '', 'PLUGIN', 18),
- ('onion', 'Onion', '', 'PLUGIN', 19),
- ('pigment_pattern', 'pigment pattern', '', 'PLUGIN', 20),
- ('planar', 'Planar', '', 'PLUGIN', 21),
- ('quilted', 'Quilted', '', 'PLUGIN', 22),
- ('radial', 'Radial', '', 'PLUGIN', 23),
- ('ripples', 'Ripples', '', 'PLUGIN', 24),
- ('slope', 'Slope', '', 'PLUGIN', 25),
- ('spherical', 'Spherical', '', 'PLUGIN', 26),
- ('spiral1', 'Spiral1', '', 'PLUGIN', 27),
- ('spiral2', 'Spiral2', '', 'PLUGIN', 28),
- ('spotted', 'Spotted', '', 'PLUGIN', 29),
- ('waves', 'Waves', '', 'PLUGIN', 30),
- ('wood', 'Wood', '', 'PLUGIN', 31),
- ('wrinkles', 'Wrinkles', '', 'PLUGIN', 32),
- ('brick', "Brick", "", 'PLUGIN', 33),
- ('checker', "Checker", "", 'PLUGIN', 34),
- ('hexagon', "Hexagon", "", 'PLUGIN', 35),
- ('object', "Mesh", "", 'PLUGIN', 36),
- ('emulator', "Internal Emulator", "", 'PLUG', 37)),
- default='emulator',
- )
+ name="Texture_Type",
+ description="Choose between Blender or POV parameters to specify texture",
+ items= (('agate', 'Agate', '','PLUGIN', 0),
+ ('aoi', 'Aoi', '', 'PLUGIN', 1),
+ ('average', 'Average', '', 'PLUGIN', 2),
+ ('boxed', 'Boxed', '', 'PLUGIN', 3),
+ ('bozo', 'Bozo', '', 'PLUGIN', 4),
+ ('bumps', 'Bumps', '', 'PLUGIN', 5),
+ ('cells', 'Cells', '', 'PLUGIN', 6),
+ ('crackle', 'Crackle', '', 'PLUGIN', 7),
+ ('cubic', 'Cubic', '', 'PLUGIN', 8),
+ ('cylindrical', 'Cylindrical', '', 'PLUGIN', 9),
+ ('density_file', 'Density', '(.df3)', 'PLUGIN', 10),
+ ('dents', 'Dents', '', 'PLUGIN', 11),
+ ('fractal', 'Fractal', '', 'PLUGIN', 12),
+ ('function', 'Function', '', 'PLUGIN', 13),
+ ('gradient', 'Gradient', '', 'PLUGIN', 14),
+ ('granite', 'Granite', '', 'PLUGIN', 15),
+ ('image_pattern', 'Image pattern', '', 'PLUGIN', 16),
+ ('leopard', 'Leopard', '', 'PLUGIN', 17),
+ ('marble', 'Marble', '', 'PLUGIN', 18),
+ ('onion', 'Onion', '', 'PLUGIN', 19),
+ ('pigment_pattern', 'pigment pattern', '', 'PLUGIN', 20),
+ ('planar', 'Planar', '', 'PLUGIN', 21),
+ ('quilted', 'Quilted', '', 'PLUGIN', 22),
+ ('radial', 'Radial', '', 'PLUGIN', 23),
+ ('ripples', 'Ripples', '', 'PLUGIN', 24),
+ ('slope', 'Slope', '', 'PLUGIN', 25),
+ ('spherical', 'Spherical', '', 'PLUGIN', 26),
+ ('spiral1', 'Spiral1', '', 'PLUGIN', 27),
+ ('spiral2', 'Spiral2', '', 'PLUGIN', 28),
+ ('spotted', 'Spotted', '', 'PLUGIN', 29),
+ ('waves', 'Waves', '', 'PLUGIN', 30),
+ ('wood', 'Wood', '', 'PLUGIN', 31),
+ ('wrinkles', 'Wrinkles', '', 'PLUGIN', 32),
+ ('brick', "Brick", "", 'PLUGIN', 33),
+ ('checker', "Checker", "", 'PLUGIN', 34),
+ ('hexagon', "Hexagon", "", 'PLUGIN', 35),
+ ('object', "Mesh", "", 'PLUGIN', 36),
+ ('emulator', "Internal Emulator", "", 'PLUG', 37)),
+ default='emulator',
+ )
magnet_style: EnumProperty(
- name="Magnet style",
- description="magnet or julia",
- items=(('mandel', "Mandelbrot", ""),('julia', "Julia", "")),
- default='julia')
+ name="Magnet style",
+ description="magnet or julia",
+ items=(('mandel', "Mandelbrot", ""),('julia', "Julia", "")),
+ default='julia',
+ )
magnet_type: IntProperty(
- name="Magnet_type",
- description="1 or 2",
- min=1, max=2, default=2)
+ name="Magnet_type",
+ description="1 or 2",
+ min=1, max=2, default=2
+ )
warp_types: EnumProperty(
- name="Warp Types",
- description="Select the type of warp",
- items=(('PLANAR', "Planar", ""), ('CUBIC', "Cubic", ""),
- ('SPHERICAL', "Spherical", ""), ('TOROIDAL', "Toroidal", ""),
- ('CYLINDRICAL', "Cylindrical", ""), ('NONE', "None", "No indentation")),
- default='NONE')
+ name="Warp Types",
+ description="Select the type of warp",
+ items=(('PLANAR', "Planar", ""), ('CUBIC', "Cubic", ""),
+ ('SPHERICAL', "Spherical", ""), ('TOROIDAL', "Toroidal", ""),
+ ('CYLINDRICAL', "Cylindrical", ""), ('NONE', "None", "No indentation")),
+ default='NONE'
+ )
warp_orientation: EnumProperty(
- name="Warp Orientation",
- description="Select the orientation of warp",
- items=(('x', "X", ""), ('y', "Y", ""), ('z', "Z", "")),
- default='y')
+ name="Warp Orientation",
+ description="Select the orientation of warp",
+ items=(('x', "X", ""), ('y', "Y", ""), ('z', "Z", "")),
+ default='y',
+ )
wave_type: EnumProperty(
- name="Waves type",
- description="Select the type of waves",
- items=(('ramp', "Ramp", ""), ('sine', "Sine", ""), ('scallop', "Scallop", ""),
- ('cubic', "Cubic", ""), ('poly', "Poly", ""), ('triangle', 'Triangle', "")),
- default='ramp')
+ name="Waves type",
+ description="Select the type of waves",
+ items=(('ramp', "Ramp", ""), ('sine', "Sine", ""), ('scallop', "Scallop", ""),
+ ('cubic', "Cubic", ""), ('poly', "Poly", ""), ('triangle', 'Triangle', "")),
+ default='ramp',
+ )
gen_noise: IntProperty(
- name="Noise Generators",
- description="Noise Generators",
- min=1, max=3, default=1)
+ name="Noise Generators",
+ description="Noise Generators",
+ min=1, max=3, default=1,
+ )
warp_dist_exp: FloatProperty(
- name="Distance exponent",
- description="Distance exponent",
- min=0.0, max=100.0, default=1.0)
+ name="Distance exponent",
+ description="Distance exponent",
+ min=0.0, max=100.0, default=1.0,
+ )
warp_tor_major_radius: FloatProperty(
- name="Major radius",
- description="Torus is distance from major radius",
- min=0.0, max=5.0, default=1.0)
-
+ name="Major radius",
+ description="Torus is distance from major radius",
+ min=0.0, max=5.0, default=1.0,
+ )
warp_turbulence_x: FloatProperty(
- name="Turbulence X",
- description="Turbulence X",
- min=0.0, max=5.0, default=0.0)
+ name="Turbulence X",
+ description="Turbulence X",
+ min=0.0, max=5.0, default=0.0,
+ )
warp_turbulence_y: FloatProperty(
- name="Turbulence Y",
- description="Turbulence Y",
- min=0.0, max=5.0, default=0.0)
+ name="Turbulence Y",
+ description="Turbulence Y",
+ min=0.0, max=5.0, default=0.0
+ )
warp_turbulence_z: FloatProperty(
- name="Turbulence Z",
- description="Turbulence Z",
- min=0.0, max=5.0, default=0.0)
+ name="Turbulence Z",
+ description="Turbulence Z",
+ min=0.0, max=5.0, default=0.0
+ )
modifier_octaves: IntProperty(
- name="Turbulence octaves",
- description="Turbulence octaves",
- min=1, max=10, default=1)
+ name="Turbulence octaves",
+ description="Turbulence octaves",
+ min=1, max=10, default=1
+ )
modifier_lambda: FloatProperty(
- name="Turbulence lambda",
- description="Turbulence lambda",
- min=0.0, max=5.0, default=1.00)
+ name="Turbulence lambda",
+ description="Turbulence lambda",
+ min=0.0, max=5.0, default=1.00
+ )
modifier_omega: FloatProperty(
- name="Turbulence omega",
- description="Turbulence omega",
- min=0.0, max=10.0, default=1.00)
+ name="Turbulence omega",
+ description="Turbulence omega",
+ min=0.0, max=10.0, default=1.00
+ )
modifier_phase: FloatProperty(
- name="Phase",
- description="The phase value causes the map entries to be shifted so that the map "
- "starts and ends at a different place",
- min=0.0, max=2.0, default=0.0)
+ name="Phase",
+ description="The phase value causes the map entries to be shifted so that the map "
+ "starts and ends at a different place",
+ min=0.0, max=2.0, default=0.0
+ )
modifier_frequency: FloatProperty(
- name="Frequency",
- description="The frequency keyword adjusts the number of times that a color map "
- "repeats over one cycle of a pattern",
- min=0.0, max=25.0, default=2.0)
+ name="Frequency",
+ description="The frequency keyword adjusts the number of times that a color map "
+ "repeats over one cycle of a pattern",
+ min=0.0, max=25.0, default=2.0
+ )
modifier_turbulence: FloatProperty(
- name="Turbulence",
- description="Turbulence",
- min=0.0, max=5.0, default=2.0)
+ name="Turbulence",
+ description="Turbulence",
+ min=0.0, max=5.0, default=2.0
+ )
modifier_numbers: IntProperty(
- name="Numbers",
- description="Numbers",
- min=1, max=27, default=2)
+ name="Numbers",
+ description="Numbers",
+ min=1, max=27, default=2
+ )
modifier_control0: IntProperty(
- name="Control0",
- description="Control0",
- min=0, max=100, default=1)
+ name="Control0",
+ description="Control0",
+ min=0, max=100, default=1
+ )
modifier_control1: IntProperty(
- name="Control1",
- description="Control1",
- min=0, max=100, default=1)
+ name="Control1",
+ description="Control1",
+ min=0, max=100, default=1
+ )
brick_size_x: FloatProperty(
- name="Brick size x",
- description="",
- min=0.0000, max=1.0000, default=0.2500)
+ name="Brick size x",
+ description="",
+ min=0.0000, max=1.0000, default=0.2500
+ )
brick_size_y: FloatProperty(
- name="Brick size y",
- description="",
- min=0.0000, max=1.0000, default=0.0525)
+ name="Brick size y",
+ description="",
+ min=0.0000, max=1.0000, default=0.0525
+ )
brick_size_z: FloatProperty(
- name="Brick size z",
- description="",
- min=0.0000, max=1.0000, default=0.1250)
+ name="Brick size z",
+ description="",
+ min=0.0000, max=1.0000, default=0.1250
+ )
brick_mortar: FloatProperty(
- name="Mortar",
- description="Mortar",
- min=0.000, max=1.500, default=0.01)
+ name="Mortar",
+ description="Mortar",
+ min=0.000, max=1.500, default=0.01
+ )
julia_complex_1: FloatProperty(
- name="Julia Complex 1",
- description="",
- min=0.000, max=1.500, default=0.360)
+ name="Julia Complex 1",
+ description="",
+ min=0.000, max=1.500, default=0.360
+ )
julia_complex_2: FloatProperty(
- name="Julia Complex 2",
- description="",
- min=0.000, max=1.500, default=0.250)
+ name="Julia Complex 2",
+ description="",
+ min=0.000, max=1.500, default=0.250
+ )
f_iter: IntProperty(
- name="Fractal Iteration",
- description="",
- min=0, max=100, default=20)
+ name="Fractal Iteration",
+ description="",
+ min=0, max=100, default=20
+ )
f_exponent: IntProperty(
- name="Fractal Exponent",
- description="",
- min=2, max=33, default=2)
+ name="Fractal Exponent",
+ description="",
+ min=2, max=33, default=2
+ )
f_ior: IntProperty(
- name="Fractal Interior",
- description="",
- min=1, max=6, default=1)
+ name="Fractal Interior",
+ description="",
+ min=1, max=6, default=1
+ )
f_ior_fac: FloatProperty(
- name="Fractal Interior Factor",
- description="",
- min=0.0, max=10.0, default=1.0)
+ name="Fractal Interior Factor",
+ description="",
+ min=0.0, max=10.0, default=1.0
+ )
f_eor: IntProperty(
- name="Fractal Exterior",
- description="",
- min=1, max=8, default=1)
+ name="Fractal Exterior",
+ description="",
+ min=1, max=8, default=1
+ )
f_eor_fac: FloatProperty(
- name="Fractal Exterior Factor",
- description="",
- min=0.0, max=10.0, default=1.0)
+ name="Fractal Exterior Factor",
+ description="",
+ min=0.0, max=10.0, default=1.0
+ )
grad_orient_x: IntProperty(
- name="Gradient orientation X",
- description="",
- min=0, max=1, default=0)
+ name="Gradient orientation X",
+ description="",
+ min=0, max=1, default=0
+ )
grad_orient_y: IntProperty(
- name="Gradient orientation Y",
- description="",
- min=0, max=1, default=1)
+ name="Gradient orientation Y",
+ description="",
+ min=0, max=1, default=1
+ )
grad_orient_z: IntProperty(
- name="Gradient orientation Z",
- description="",
- min=0, max=1, default=0)
+ name="Gradient orientation Z",
+ description="",
+ min=0, max=1, default=0
+ )
pave_sides: EnumProperty(
- name="Pavement sides",
- description="",
- items=(('3', "3", ""), ('4', "4", ""), ('6', "6", "")),
- default='3')
+ name="Pavement sides",
+ description="",
+ items=(('3', "3", ""), ('4', "4", ""), ('6', "6", "")),
+ default='3'
+ )
pave_pat_2: IntProperty(
- name="Pavement pattern 2",
- description="maximum: 2",
- min=1, max=2, default=2)
+ name="Pavement pattern 2",
+ description="maximum: 2",
+ min=1, max=2, default=2
+ )
pave_pat_3: IntProperty(
- name="Pavement pattern 3",
- description="maximum: 3",
- min=1, max=3, default=3)
+ name="Pavement pattern 3",
+ description="maximum: 3",
+ min=1, max=3, default=3
+ )
pave_pat_4: IntProperty(
- name="Pavement pattern 4",
- description="maximum: 4",
- min=1, max=4, default=4)
+ name="Pavement pattern 4",
+ description="maximum: 4",
+ min=1, max=4, default=4
+ )
pave_pat_5: IntProperty(
- name="Pavement pattern 5",
- description="maximum: 5",
- min=1, max=5, default=5)
+ name="Pavement pattern 5",
+ description="maximum: 5",
+ min=1, max=5, default=5
+ )
pave_pat_7: IntProperty(
- name="Pavement pattern 7",
- description="maximum: 7",
- min=1, max=7, default=7)
+ name="Pavement pattern 7",
+ description="maximum: 7",
+ min=1, max=7, default=7
+ )
pave_pat_12: IntProperty(
- name="Pavement pattern 12",
- description="maximum: 12",
- min=1, max=12, default=12)
+ name="Pavement pattern 12",
+ description="maximum: 12",
+ min=1, max=12, default=12
+ )
pave_pat_22: IntProperty(
- name="Pavement pattern 22",
- description="maximum: 22",
- min=1, max=22, default=22)
+ name="Pavement pattern 22",
+ description="maximum: 22",
+ min=1, max=22, default=22
+ )
pave_pat_35: IntProperty(
- name="Pavement pattern 35",
- description="maximum: 35",
- min=1, max=35, default=35)
+ name="Pavement pattern 35",
+ description="maximum: 35",
+ min=1, max=35, default=35,
+ )
pave_tiles: IntProperty(
- name="Pavement tiles",
- description="If sides = 6, maximum tiles 5!!!",
- min=1, max=6, default=1)
+ name="Pavement tiles",
+ description="If sides = 6, maximum tiles 5!!!",
+ min=1, max=6, default=1
+ )
pave_form: IntProperty(
- name="Pavement form",
- description="",
- min=0, max=4, default=0)
+ name="Pavement form",
+ description="",
+ min=0, max=4, default=0
+ )
#########FUNCTIONS#############################################################################
#########FUNCTIONS#############################################################################
func_list: EnumProperty(
- name="Functions",
- description="Select the function for create pattern",
- items=(('NONE', "None", "No indentation"),
- ("f_algbr_cyl1","Algbr cyl1",""), ("f_algbr_cyl2","Algbr cyl2",""),
- ("f_algbr_cyl3","Algbr cyl3",""), ("f_algbr_cyl4","Algbr cyl4",""),
- ("f_bicorn","Bicorn",""), ("f_bifolia","Bifolia",""),
- ("f_blob","Blob",""), ("f_blob2","Blob2",""),
- ("f_boy_surface","Boy surface",""), ("f_comma","Comma",""),
- ("f_cross_ellipsoids","Cross ellipsoids",""),
- ("f_crossed_trough","Crossed trough",""), ("f_cubic_saddle","Cubic saddle",""),
- ("f_cushion","Cushion",""), ("f_devils_curve","Devils curve",""),
- ("f_devils_curve_2d","Devils curve 2d",""),
- ("f_dupin_cyclid","Dupin cyclid",""), ("f_ellipsoid","Ellipsoid",""),
- ("f_enneper","Enneper",""), ("f_flange_cover","Flange cover",""),
- ("f_folium_surface","Folium surface",""),
- ("f_folium_surface_2d","Folium surface 2d",""), ("f_glob","Glob",""),
- ("f_heart","Heart",""), ("f_helical_torus","Helical torus",""),
- ("f_helix1","Helix1",""), ("f_helix2","Helix2",""), ("f_hex_x","Hex x",""),
- ("f_hex_y","Hex y",""), ("f_hetero_mf","Hetero mf",""),
- ("f_hunt_surface","Hunt surface",""),
- ("f_hyperbolic_torus","Hyperbolic torus",""),
- ("f_isect_ellipsoids","Isect ellipsoids",""),
- ("f_kampyle_of_eudoxus","Kampyle of eudoxus",""),
- ("f_kampyle_of_eudoxus_2d","Kampyle of eudoxus 2d",""),
- ("f_klein_bottle","Klein bottle",""),
- ("f_kummer_surface_v1","Kummer surface v1",""),
- ("f_kummer_surface_v2","Kummer surface v2",""),
- ("f_lemniscate_of_gerono","Lemniscate of gerono",""),
- ("f_lemniscate_of_gerono_2d","Lemniscate of gerono 2d",""),
- ("f_mesh1","Mesh1",""), ("f_mitre","Mitre",""),
- ("f_nodal_cubic","Nodal cubic",""), ("f_noise3d","Noise3d",""),
- ("f_noise_generator","Noise generator",""), ("f_odd","Odd",""),
- ("f_ovals_of_cassini","Ovals of cassini",""), ("f_paraboloid","Paraboloid",""),
- ("f_parabolic_torus","Parabolic torus",""), ("f_ph","Ph",""),
- ("f_pillow","Pillow",""), ("f_piriform","Piriform",""),
- ("f_piriform_2d","Piriform 2d",""), ("f_poly4","Poly4",""),
- ("f_polytubes","Polytubes",""), ("f_quantum","Quantum",""),
- ("f_quartic_paraboloid","Quartic paraboloid",""),
- ("f_quartic_saddle","Quartic saddle",""),
- ("f_quartic_cylinder","Quartic cylinder",""), ("f_r","R",""),
- ("f_ridge","Ridge",""), ("f_ridged_mf","Ridged mf",""),
- ("f_rounded_box","Rounded box",""), ("f_sphere","Sphere",""),
- ("f_spikes","Spikes",""), ("f_spikes_2d","Spikes 2d",""),
- ("f_spiral","Spiral",""), ("f_steiners_roman","Steiners roman",""),
- ("f_strophoid","Strophoid",""), ("f_strophoid_2d","Strophoid 2d",""),
- ("f_superellipsoid","Superellipsoid",""), ("f_th","Th",""),
- ("f_torus","Torus",""), ("f_torus2","Torus2",""),
- ("f_torus_gumdrop","Torus gumdrop",""), ("f_umbrella","Umbrella",""),
- ("f_witch_of_agnesi","Witch of agnesi",""),
- ("f_witch_of_agnesi_2d","Witch of agnesi 2d","")),
-
- default='NONE')
+ name="Functions",
+ description="Select the function for create pattern",
+ items=(('NONE', "None", "No indentation"),
+ ("f_algbr_cyl1","Algbr cyl1",""), ("f_algbr_cyl2","Algbr cyl2",""),
+ ("f_algbr_cyl3","Algbr cyl3",""), ("f_algbr_cyl4","Algbr cyl4",""),
+ ("f_bicorn","Bicorn",""), ("f_bifolia","Bifolia",""),
+ ("f_blob","Blob",""), ("f_blob2","Blob2",""),
+ ("f_boy_surface","Boy surface",""), ("f_comma","Comma",""),
+ ("f_cross_ellipsoids","Cross ellipsoids",""),
+ ("f_crossed_trough","Crossed trough",""), ("f_cubic_saddle","Cubic saddle",""),
+ ("f_cushion","Cushion",""), ("f_devils_curve","Devils curve",""),
+ ("f_devils_curve_2d","Devils curve 2d",""),
+ ("f_dupin_cyclid","Dupin cyclid",""), ("f_ellipsoid","Ellipsoid",""),
+ ("f_enneper","Enneper",""), ("f_flange_cover","Flange cover",""),
+ ("f_folium_surface","Folium surface",""),
+ ("f_folium_surface_2d","Folium surface 2d",""), ("f_glob","Glob",""),
+ ("f_heart","Heart",""), ("f_helical_torus","Helical torus",""),
+ ("f_helix1","Helix1",""), ("f_helix2","Helix2",""), ("f_hex_x","Hex x",""),
+ ("f_hex_y","Hex y",""), ("f_hetero_mf","Hetero mf",""),
+ ("f_hunt_surface","Hunt surface",""),
+ ("f_hyperbolic_torus","Hyperbolic torus",""),
+ ("f_isect_ellipsoids","Isect ellipsoids",""),
+ ("f_kampyle_of_eudoxus","Kampyle of eudoxus",""),
+ ("f_kampyle_of_eudoxus_2d","Kampyle of eudoxus 2d",""),
+ ("f_klein_bottle","Klein bottle",""),
+ ("f_kummer_surface_v1","Kummer surface v1",""),
+ ("f_kummer_surface_v2","Kummer surface v2",""),
+ ("f_lemniscate_of_gerono","Lemniscate of gerono",""),
+ ("f_lemniscate_of_gerono_2d","Lemniscate of gerono 2d",""),
+ ("f_mesh1","Mesh1",""), ("f_mitre","Mitre",""),
+ ("f_nodal_cubic","Nodal cubic",""), ("f_noise3d","Noise3d",""),
+ ("f_noise_generator","Noise generator",""), ("f_odd","Odd",""),
+ ("f_ovals_of_cassini","Ovals of cassini",""), ("f_paraboloid","Paraboloid",""),
+ ("f_parabolic_torus","Parabolic torus",""), ("f_ph","Ph",""),
+ ("f_pillow","Pillow",""), ("f_piriform","Piriform",""),
+ ("f_piriform_2d","Piriform 2d",""), ("f_poly4","Poly4",""),
+ ("f_polytubes","Polytubes",""), ("f_quantum","Quantum",""),
+ ("f_quartic_paraboloid","Quartic paraboloid",""),
+ ("f_quartic_saddle","Quartic saddle",""),
+ ("f_quartic_cylinder","Quartic cylinder",""), ("f_r","R",""),
+ ("f_ridge","Ridge",""), ("f_ridged_mf","Ridged mf",""),
+ ("f_rounded_box","Rounded box",""), ("f_sphere","Sphere",""),
+ ("f_spikes","Spikes",""), ("f_spikes_2d","Spikes 2d",""),
+ ("f_spiral","Spiral",""), ("f_steiners_roman","Steiners roman",""),
+ ("f_strophoid","Strophoid",""), ("f_strophoid_2d","Strophoid 2d",""),
+ ("f_superellipsoid","Superellipsoid",""), ("f_th","Th",""),
+ ("f_torus","Torus",""), ("f_torus2","Torus2",""),
+ ("f_torus_gumdrop","Torus gumdrop",""), ("f_umbrella","Umbrella",""),
+ ("f_witch_of_agnesi","Witch of agnesi",""),
+ ("f_witch_of_agnesi_2d","Witch of agnesi 2d","")),
+
+ default='NONE',
+ )
func_x: FloatProperty(
- name="FX",
- description="",
- min=0.0, max=25.0, default=1.0)
+ name="FX",
+ description="",
+ min=0.0, max=25.0, default=1.0
+ )
func_plus_x: EnumProperty(
- name="Func plus x",
- description="",
- items=(('NONE', "None", ""), ('increase', "*", ""), ('plus', "+", "")),
- default='NONE')
+ name="Func plus x",
+ description="",
+ items=(('NONE', "None", ""), ('increase', "*", ""), ('plus', "+", "")),
+ default='NONE',
+ )
func_y: FloatProperty(
- name="FY",
- description="",
- min=0.0, max=25.0, default=1.0)
+ name="FY",
+ description="",
+ min=0.0, max=25.0, default=1.0
+ )
func_plus_y: EnumProperty(
- name="Func plus y",
- description="",
- items=(('NONE', "None", ""), ('increase', "*", ""), ('plus', "+", "")),
- default='NONE')
+ name="Func plus y",
+ description="",
+ items=(('NONE', "None", ""), ('increase', "*", ""), ('plus', "+", "")),
+ default='NONE',
+ )
func_z: FloatProperty(
- name="FZ",
- description="",
- min=0.0, max=25.0, default=1.0)
+ name="FZ",
+ description="",
+ min=0.0, max=25.0, default=1.0
+ )
func_plus_z: EnumProperty(
- name="Func plus z",
- description="",
- items=(('NONE', "None", ""), ('increase', "*", ""), ('plus', "+", "")),
- default='NONE')
+ name="Func plus z",
+ description="",
+ items=(('NONE', "None", ""), ('increase', "*", ""), ('plus', "+", "")),
+ default='NONE',
+ )
func_P0: FloatProperty(
- name="P0",
- description="",
- min=0.0, max=25.0, default=1.0)
+ name="P0",
+ description="",
+ min=0.0, max=25.0, default=1.0
+ )
func_P1: FloatProperty(
- name="P1",
- description="",
- min=0.0, max=25.0, default=1.0)
+ name="P1",
+ description="",
+ min=0.0, max=25.0, default=1.0
+ )
func_P2: FloatProperty(
- name="P2",
- description="",
- min=0.0, max=25.0, default=1.0)
+ name="P2",
+ description="",
+ min=0.0, max=25.0, default=1.0
+ )
func_P3: FloatProperty(
- name="P3",
- description="",
- min=0.0, max=25.0, default=1.0)
+ name="P3",
+ description="",
+ min=0.0, max=25.0, default=1.0
+ )
func_P4: FloatProperty(
- name="P4",
- description="",
- min=0.0, max=25.0, default=1.0)
+ name="P4",
+ description="",
+ min=0.0, max=25.0, default=1.0
+ )
func_P5: FloatProperty(
- name="P5",
- description="",
- min=0.0, max=25.0, default=1.0)
+ name="P5",
+ description="",
+ min=0.0, max=25.0, default=1.0
+ )
func_P6: FloatProperty(
- name="P6",
- description="",
- min=0.0, max=25.0, default=1.0)
+ name="P6",
+ description="",
+ min=0.0, max=25.0, default=1.0
+ )
func_P7: FloatProperty(
- name="P7",
- description="",
- min=0.0, max=25.0, default=1.0)
+ name="P7",
+ description="",
+ min=0.0, max=25.0, default=1.0
+ )
func_P8: FloatProperty(
- name="P8",
- description="",
- min=0.0, max=25.0, default=1.0)
+ name="P8",
+ description="",
+ min=0.0, max=25.0, default=1.0
+ )
func_P9: FloatProperty(
- name="P9",
- description="",
- min=0.0, max=25.0, default=1.0)
+ name="P9",
+ description="",
+ min=0.0, max=25.0, default=1.0
+ )
#########################################
tex_rot_x: FloatProperty(
- name="Rotate X",
- description="",
- min=-180.0, max=180.0, default=0.0)
+ name="Rotate X",
+ description="",
+ min=-180.0, max=180.0, default=0.0
+ )
tex_rot_y: FloatProperty(
- name="Rotate Y",
- description="",
- min=-180.0, max=180.0, default=0.0)
+ name="Rotate Y",
+ description="",
+ min=-180.0, max=180.0, default=0.0
+ )
tex_rot_z: FloatProperty(
- name="Rotate Z",
- description="",
- min=-180.0, max=180.0, default=0.0)
+ name="Rotate Z",
+ description="",
+ min=-180.0, max=180.0, default=0.0
+ )
tex_mov_x: FloatProperty(
- name="Move X",
- description="",
- min=-100000.0, max=100000.0, default=0.0)
+ name="Move X",
+ description="",
+ min=-100000.0, max=100000.0, default=0.0
+ )
tex_mov_y: FloatProperty(
- name="Move Y",
- description="",
- min=-100000.0, max=100000.0, default=0.0)
+ name="Move Y",
+ description="",
+ min=-100000.0, max=100000.0, default=0.0
+ )
tex_mov_z: FloatProperty(
- name="Move Z",
- description="",
- min=-100000.0, max=100000.0, default=0.0)
+ name="Move Z",
+ description="",
+ min=-100000.0, max=100000.0, default=0.0
+ )
tex_scale_x: FloatProperty(
- name="Scale X",
- description="",
- min=0.0, max=10000.0, default=1.0)
+ name="Scale X",
+ description="",
+ min=0.0, max=10000.0, default=1.0
+ )
tex_scale_y: FloatProperty(
- name="Scale Y",
- description="",
- min=0.0, max=10000.0, default=1.0)
+ name="Scale Y",
+ description="",
+ min=0.0, max=10000.0, default=1.0
+ )
tex_scale_z: FloatProperty(
- name="Scale Z",
- description="",
- min=0.0, max=10000.0, default=1.0)
-
+ name="Scale Z",
+ description="",
+ min=0.0, max=10000.0, default=1.0
+ )
###############################################################################
# Object POV properties.
@@ -3707,43 +4225,47 @@ class RenderPovSettingsObject(PropertyGroup):
# Pov inside_vector used for CSG
inside_vector: FloatVectorProperty(
- name="CSG Inside Vector", description="Direction to shoot CSG inside test rays at",
- precision=4, step=0.01, min=0, soft_max=1,
- default=(0.001, 0.001, 0.5),
- options={'ANIMATABLE'},
- subtype='XYZ')
+ name="CSG Inside Vector", description="Direction to shoot CSG inside test rays at",
+ precision=4, step=0.01, min=0, soft_max=1,
+ default=(0.001, 0.001, 0.5),
+ options={'ANIMATABLE'},
+ subtype='XYZ'
+ )
# Importance sampling
importance_value: FloatProperty(
- name="Radiosity Importance",
- description="Priority value relative to other objects for sampling radiosity rays. "
- "Increase to get more radiosity rays at comparatively small yet "
- "bright objects",
- min=0.01, max=1.00, default=0.50)
+ name="Radiosity Importance",
+ description="Priority value relative to other objects for sampling radiosity rays. "
+ "Increase to get more radiosity rays at comparatively small yet "
+ "bright objects",
+ min=0.01, max=1.00, default=0.50
+ )
# Collect photons
collect_photons: BoolProperty(
- name="Receive Photon Caustics",
- description="Enable object to collect photons from other objects caustics. Turn "
- "off for objects that don't really need to receive caustics (e.g. objects"
- " that generate caustics often don't need to show any on themselves)",
- default=True)
+ name="Receive Photon Caustics",
+ description="Enable object to collect photons from other objects caustics. Turn "
+ "off for objects that don't really need to receive caustics (e.g. objects"
+ " that generate caustics often don't need to show any on themselves)",
+ default=True,
+ )
# Photons spacing_multiplier
spacing_multiplier: FloatProperty(
- name="Photons Spacing Multiplier",
- description="Multiplier value relative to global spacing of photons. "
- "Decrease by half to get 4x more photons at surface of "
- "this object (or 8x media photons than specified in the globals",
- min=0.01, max=1.00, default=1.00)
+ name="Photons Spacing Multiplier",
+ description="Multiplier value relative to global spacing of photons. "
+ "Decrease by half to get 4x more photons at surface of "
+ "this object (or 8x media photons than specified in the globals",
+ min=0.01, max=1.00, default=1.00)
##################################CustomPOV Code############################
# Only DUMMIES below for now:
replacement_text: StringProperty(
- name="Declared name:",
- description="Type the declared name in custom POV code or an external .inc "
- "it points at. Any POV shape expected e.g: isosurface {}",
- default="")
+ name="Declared name:",
+ description="Type the declared name in custom POV code or an external .inc "
+ "it points at. Any POV shape expected e.g: isosurface {}",
+ default="",
+ )
#############POV specific object properties.############################
object_as: StringProperty(maxlen=1024)
@@ -3751,36 +4273,41 @@ class RenderPovSettingsObject(PropertyGroup):
imported_loc: FloatVectorProperty(
name="Imported Pov location",
precision=6,
- default=(0.0, 0.0, 0.0))
+ default=(0.0, 0.0, 0.0),
+ )
imported_loc_cap: FloatVectorProperty(
name="Imported Pov location",
precision=6,
- default=(0.0, 0.0, 2.0))
+ 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",
- items=(("birail", "Birail", ""),
- ("cairo", "Cairo", ""),
- ("lathe", "Lathe", ""),
- ("loft", "Loft", ""),
- ("prism", "Prism", ""),
- ("sphere_sweep", "Sphere Sweep", "")),
- default="sphere_sweep")
+ name="Povray Shape Type",
+ items=(("birail", "Birail", ""),
+ ("cairo", "Cairo", ""),
+ ("lathe", "Lathe", ""),
+ ("loft", "Loft", ""),
+ ("prism", "Prism", ""),
+ ("sphere_sweep", "Sphere Sweep", "")),
+ default="sphere_sweep",
+ )
mesh_write_as: EnumProperty(
- name="Mesh Write As",
- items=(("blobgrid", "Blob Grid", ""),
- ("grid", "Grid", ""),
- ("mesh", "Mesh", "")),
- default="mesh")
+ name="Mesh Write As",
+ items=(("blobgrid", "Blob Grid", ""),
+ ("grid", "Grid", ""),
+ ("mesh", "Mesh", "")),
+ default="mesh",
+ )
object_ior: FloatProperty(
- name="IOR", description="IOR",
- min=1.0, max=10.0,default=1.0)
+ name="IOR", description="IOR",
+ min=1.0, max=10.0,default=1.0
+ )
# shape_as_light = StringProperty(name="Light",maxlen=1024)
# fake_caustics_power = FloatProperty(
@@ -3817,11 +4344,13 @@ class RenderPovSettingsObject(PropertyGroup):
hollow: BoolProperty(name="Hollow",default=False)
boundorclip: EnumProperty(
- name="Boundorclip",
- items=(("none", "None", ""),
- ("bounded_by", "Bounded_by", ""),
- ("clipped_by", "Clipped_by", "")),
- default="none")
+ name="Boundorclip",
+ items=(("none", "None", ""),
+ ("bounded_by", "Bounded_by", ""),
+ ("clipped_by", "Clipped_by", "")),
+ default="none",
+ )
+
boundorclipob: StringProperty(maxlen=1024)
addboundorclip: BoolProperty(description="",default=False)
@@ -3835,10 +4364,11 @@ class RenderPovSettingsObject(PropertyGroup):
res_v: IntProperty(name="V",min=100, max=1000, default=500)
contained_by: EnumProperty(
- name="Contained by",
- items=(("box", "Box", ""),
- ("sphere", "Sphere", "")),
- default="box")
+ name="Contained by",
+ items=(("box", "Box", ""),
+ ("sphere", "Sphere", "")),
+ default="box",
+ )
container_scale: FloatProperty(name="Container Scale",min=0.0, max=10.0, default=1.00)
@@ -3859,325 +4389,475 @@ class RenderPovSettingsObject(PropertyGroup):
bpy.ops.pov.cylinder_update()
cylinder_radius: FloatProperty(
- name="Cylinder R",min=0.00, max=10.0, default=0.04, update=prop_update_cylinder)
+ name="Cylinder R",min=0.00, max=10.0, default=0.04, update=prop_update_cylinder)
cylinder_location_cap: FloatVectorProperty(
- name="Cylinder Cap Location", subtype='TRANSLATION',
- description="The position of the 'other' end of the cylinder (relative to object location)",
- default=(0.0, 0.0, 2.0), update=prop_update_cylinder)
+ name="Cylinder Cap Location", subtype='TRANSLATION',
+ description="The position of the 'other' end of the cylinder (relative to object location)",
+ default=(0.0, 0.0, 2.0), update=prop_update_cylinder
+ )
imported_cyl_loc: FloatVectorProperty(
name="Imported Pov location",
precision=6,
- default=(0.0, 0.0, 0.0))
+ default=(0.0, 0.0, 0.0)
+ )
imported_cyl_loc_cap: FloatVectorProperty(
name="Imported Pov location",
precision=6,
- default=(0.0, 0.0, 2.0))
+ default=(0.0, 0.0, 2.0)
+ )
def prop_update_sphere(self, context):
- """Update POV sphere primitive parameters not only at creation but anytime they are changed in UI."""
+
+ """Update POV sphere primitive parameters not only at creation but anytime they are changed in UI."""
+
bpy.ops.pov.sphere_update()
sphere_radius: FloatProperty(
name="Sphere radius",min=0.00, max=10.0, default=0.5, update=prop_update_sphere)
-
def prop_update_cone(self, context):
- """Update POV cone primitive parameters not only at creation but anytime they are changed in UI."""
+
+ """Update POV cone primitive parameters not only at creation but anytime they are changed in UI."""
+
bpy.ops.pov.cone_update()
cone_base_radius: FloatProperty(
- name = "Base radius", description = "The first radius of the cone",
- default = 1.0, min = 0.01, max = 100.0, update=prop_update_cone)
-
+ name = "Base radius",
+ description = "The first radius of the cone",
+ default = 1.0, min = 0.01, max = 100.0, update=prop_update_cone
+ )
+
cone_cap_radius: FloatProperty(
- name = "Cap radius", description = "The second radius of the cone",
- default = 0.3, min = 0.0, max = 100.0, update=prop_update_cone)
+ name = "Cap radius",
+ description = "The second radius of the cone",
+ default = 0.3, min = 0.0, max = 100.0, update=prop_update_cone
+ )
cone_segments: IntProperty(
- name = "Segments", description = "Radial segmentation of proxy mesh",
- default = 16, min = 3, max = 265, update=prop_update_cone)
+ name = "Segments",
+ description = "Radial segmentation of proxy mesh",
+ default = 16, min = 3, max = 265, update=prop_update_cone
+ )
cone_height: FloatProperty(
- name = "Height", description = "Height of the cone",
- default = 2.0, min = 0.01, max = 100.0, update=prop_update_cone)
+ name = "Height",
+ description = "Height of the cone",
+ default = 2.0, min = 0.01, max = 100.0, update=prop_update_cone
+ )
cone_base_z: FloatProperty()
-
+
cone_cap_z: FloatProperty()
###########Parametric
def prop_update_parametric(self, context):
+
"""Update POV parametric surface primitive parameters not only at creation but anytime they are changed in UI."""
+
bpy.ops.pov.parametric_update()
- u_min: FloatProperty(name = "U Min",
- description = "",
- default = 0.0, update=prop_update_parametric)
- v_min: FloatProperty(name = "V Min",
- description = "",
- default = 0.0, update=prop_update_parametric)
- u_max: FloatProperty(name = "U Max",
- description = "",
- default = 6.28, update=prop_update_parametric)
- v_max: FloatProperty(name = "V Max",
- description = "",
- default = 12.57, update=prop_update_parametric)
+ u_min: FloatProperty(
+ name = "U Min",
+ description = "",
+ default = 0.0, update=prop_update_parametric
+ )
+
+ v_min: FloatProperty(
+ name = "V Min",
+ description = "",
+ default = 0.0,
+ update=prop_update_parametric
+ )
+
+ u_max: FloatProperty(
+ name = "U Max",
+ description = "",
+ default = 6.28,
+ update=prop_update_parametric
+ )
+
+ v_max: FloatProperty(
+ name = "V Max",
+ description = "",
+ default = 12.57, update=prop_update_parametric
+ )
+
x_eq: StringProperty(
- maxlen=1024, default = "cos(v)*(1+cos(u))*sin(v/8)", update=prop_update_parametric)
+ maxlen=1024,
+ default = "cos(v)*(1+cos(u))*sin(v/8)",
+ update=prop_update_parametric
+ )
+
y_eq: StringProperty(
- maxlen=1024, default = "sin(u)*sin(v/8)+cos(v/8)*1.5", update=prop_update_parametric)
+ maxlen=1024,
+ default = "sin(u)*sin(v/8)+cos(v/8)*1.5",
+ update=prop_update_parametric
+ )
+
z_eq: StringProperty(
- maxlen=1024, default = "sin(v)*(1+cos(u))*sin(v/8)", update=prop_update_parametric)
+ maxlen=1024,
+ default = "sin(v)*(1+cos(u))*sin(v/8)",
+ update=prop_update_parametric
+ )
-###########Torus
+ ###########Torus
def prop_update_torus(self, context):
+
"""Update POV torus primitive parameters not only at creation but anytime they are changed in UI."""
+
bpy.ops.pov.torus_update()
torus_major_segments: IntProperty(
- name = "Segments", description = "Radial segmentation of proxy mesh",
- default = 48, min = 3, max = 720, update=prop_update_torus)
+ name = "Segments",
+ description = "Radial segmentation of proxy mesh",
+ default = 48, min = 3, max = 720, update=prop_update_torus
+ )
+
torus_minor_segments: IntProperty(
- name = "Segments", description = "Cross-section segmentation of proxy mesh",
- default = 12, min = 3, max = 720, update=prop_update_torus)
+ name = "Segments",
+ description = "Cross-section segmentation of proxy mesh",
+ default = 12, min = 3, max = 720, update=prop_update_torus
+ )
+
torus_major_radius: FloatProperty(
- name="Major radius",
- description="Major radius",
- min=0.00, max=100.00, default=1.0, update=prop_update_torus)
+ name="Major radius",
+ description="Major radius",
+ min=0.00, max=100.00, default=1.0, update=prop_update_torus
+ )
+
torus_minor_radius: FloatProperty(
- name="Minor radius",
- description="Minor radius",
- min=0.00, max=100.00, default=0.25, update=prop_update_torus)
+ name="Minor radius",
+ description="Minor radius",
+ min=0.00, max=100.00, default=0.25, update=prop_update_torus
+ )
-###########Rainbow
- arc_angle: FloatProperty(name = "Arc angle",
- description = "The angle of the raynbow arc in degrees",
- default = 360, min = 0.01, max = 360.0)
- falloff_angle: FloatProperty(name = "Falloff angle",
- description = "The angle after which rainbow dissolves into background",
- default = 360, min = 0.0, max = 360)
+ ###########Rainbow
+ arc_angle: FloatProperty(
+ name = "Arc angle",
+ description = "The angle of the raynbow arc in degrees",
+ default = 360, min = 0.01, max = 360.0
+ )
+
+ falloff_angle: FloatProperty(
+ name = "Falloff angle",
+ description = "The angle after which rainbow dissolves into background",
+ default = 360, min = 0.0, max = 360
+ )
-###########HeightFields
+ ###########HeightFields
- quality: IntProperty(name = "Quality",
- description = "",
- default = 100, min = 1, max = 100)
+ quality: IntProperty(
+ name = "Quality",
+ description = "",
+ default = 100, min = 1, max = 100
+ )
hf_filename: StringProperty(maxlen = 1024)
hf_gamma: FloatProperty(
- name="Gamma",
- description="Gamma",
- min=0.0001, max=20.0, default=1.0)
+ name="Gamma",
+ description="Gamma",
+ min=0.0001, max=20.0, default=1.0
+ )
hf_premultiplied: BoolProperty(
- name="Premultiplied",
- description="Premultiplied",
- default=True)
+ name="Premultiplied",
+ description="Premultiplied",
+ default=True,
+ )
hf_smooth: BoolProperty(
- name="Smooth",
- description="Smooth",
- default=False)
+ name="Smooth",
+ description="Smooth",
+ default=False,
+ )
hf_water: FloatProperty(
- name="Water Level",
- description="Wather Level",
- min=0.00, max=1.00, default=0.0)
+ name="Water Level",
+ description="Wather Level",
+ min=0.00, max=1.00, default=0.0,
+ )
hf_hierarchy: BoolProperty(
- name="Hierarchy",
- description="Height field hierarchy",
- default=True)
+ name="Hierarchy",
+ description="Height field hierarchy",
+ default=True,
+ )
-##############Superellipsoid
+ ##############Superellipsoid
def prop_update_superellipsoid(self, context):
+
"""Update POV superellipsoid primitive parameters not only at creation but anytime they are changed in UI."""
+
bpy.ops.pov.superellipsoid_update()
se_param1: FloatProperty(
- name="Parameter 1",
- description="",
- min=0.00, max=10.0, default=0.04)
+ name="Parameter 1",
+ description="",
+ min=0.00, max=10.0, default=0.04
+ )
se_param2: FloatProperty(
- name="Parameter 2",
- description="",
- min=0.00, max=10.0, default=0.04)
-
- se_u: IntProperty(name = "U-segments",
- description = "radial segmentation",
- default = 20, min = 4, max = 265,
- update=prop_update_superellipsoid)
- se_v: IntProperty(name = "V-segments",
- description = "lateral segmentation",
- default = 20, min = 4, max = 265,
- update=prop_update_superellipsoid)
- se_n1: FloatProperty(name = "Ring manipulator",
- description = "Manipulates the shape of the Ring",
- default = 1.0, min = 0.01, max = 100.0,
- update=prop_update_superellipsoid)
+ name="Parameter 2",
+ description="",
+ min=0.00, max=10.0, default=0.04
+ )
+
+ se_u: IntProperty(
+ name = "U-segments",
+ description = "radial segmentation",
+ default = 20, min = 4, max = 265,
+ update=prop_update_superellipsoid
+ )
+
+ se_v: IntProperty(
+ name = "V-segments",
+ description = "lateral segmentation",
+ default = 20, min = 4, max = 265,
+ update=prop_update_superellipsoid
+ )
+
+ se_n1: FloatProperty(
+ name = "Ring manipulator",
+ description = "Manipulates the shape of the Ring",
+ default = 1.0, min = 0.01, max = 100.0,
+ update=prop_update_superellipsoid
+ )
+
se_n2: FloatProperty(name = "Cross manipulator",
- description = "Manipulates the shape of the cross-section",
- default = 1.0, min = 0.01, max = 100.0,
- update=prop_update_superellipsoid)
+ description = "Manipulates the shape of the cross-section",
+ default = 1.0, min = 0.01, max = 100.0,
+ update=prop_update_superellipsoid
+ )
+
se_edit: EnumProperty(items=[("NOTHING", "Nothing", ""),
("NGONS", "N-Gons", ""),
("TRIANGLES", "Triangles", "")],
- name="Fill up and down",
- description="",
- default='TRIANGLES',
- update=prop_update_superellipsoid)
-#############Used for loft and Superellipsoid, etc.
+ name="Fill up and down",
+ description="",
+ default='TRIANGLES',
+ update=prop_update_superellipsoid
+ )
+
+ #############Used for loft and Superellipsoid, etc.
curveshape: EnumProperty(
- name="Povray Shape Type",
- items=(("birail", "Birail", ""),
- ("cairo", "Cairo", ""),
- ("lathe", "Lathe", ""),
- ("loft", "Loft", ""),
- ("prism", "Prism", ""),
- ("sphere_sweep", "Sphere Sweep", ""),
- ("sor", "Surface of Revolution", "")),
- default="sphere_sweep")
+ name="Povray Shape Type",
+ items=(("birail", "Birail", ""),
+ ("cairo", "Cairo", ""),
+ ("lathe", "Lathe", ""),
+ ("loft", "Loft", ""),
+ ("prism", "Prism", ""),
+ ("sphere_sweep", "Sphere Sweep", ""),
+ ("sor", "Surface of Revolution", "")),
+ default="sphere_sweep",
+ )
#############Supertorus
def prop_update_supertorus(self, context):
- """Update POV supertorus primitive parameters not only at creation but anytime they are changed in UI."""
+
+ """Update POV supertorus primitive parameters not only at creation but anytime they are changed in UI."""
+
bpy.ops.pov.supertorus_update()
st_major_radius: FloatProperty(
- name="Major radius",
- description="Major radius",
- min=0.00, max=100.00, default=1.0,
- update=prop_update_supertorus)
+ name="Major radius",
+ description="Major radius",
+ min=0.00, max=100.00, default=1.0,
+ update=prop_update_supertorus
+ )
st_minor_radius: FloatProperty(
- name="Minor radius",
- description="Minor radius",
- min=0.00, max=100.00, default=0.25,
- update=prop_update_supertorus)
+ name="Minor radius",
+ description="Minor radius",
+ min=0.00, max=100.00, default=0.25,
+ update=prop_update_supertorus
+ )
st_ring: FloatProperty(
- name="Ring",
- description="Ring manipulator",
- min=0.0001, max=100.00, default=1.00,
- update=prop_update_supertorus)
+ name="Ring",
+ description="Ring manipulator",
+ min=0.0001, max=100.00, default=1.00,
+ update=prop_update_supertorus
+ )
st_cross: FloatProperty(
- name="Cross",
- description="Cross manipulator",
- min=0.0001, max=100.00, default=1.00,
- update=prop_update_supertorus)
+ name="Cross",
+ description="Cross manipulator",
+ min=0.0001, max=100.00, default=1.00,
+ update=prop_update_supertorus
+ )
st_accuracy: FloatProperty(
- name="Accuracy",
- description="Supertorus accuracy",
- min=0.00001, max=1.00, default=0.001)
+ name="Accuracy",
+ description="Supertorus accuracy",
+ min=0.00001, max=1.00, default=0.001
+ )
st_max_gradient: FloatProperty(
- name="Gradient",
- description="Max gradient",
- min=0.0001, max=100.00, default=10.00,
- update=prop_update_supertorus)
-
- st_R: FloatProperty(name = "big radius",
- description = "The radius inside the tube",
- default = 1.0, min = 0.01, max = 100.0,
- update=prop_update_supertorus)
- st_r: FloatProperty(name = "small radius",
- description = "The radius of the tube",
- default = 0.3, min = 0.01, max = 100.0,
- update=prop_update_supertorus)
- st_u: IntProperty(name = "U-segments",
- description = "radial segmentation",
- default = 16, min = 3, max = 265,
- update=prop_update_supertorus)
- st_v: IntProperty(name = "V-segments",
- description = "lateral segmentation",
- default = 8, min = 3, max = 265,
- update=prop_update_supertorus)
- st_n1: FloatProperty(name = "Ring manipulator",
- description = "Manipulates the shape of the Ring",
- default = 1.0, min = 0.01, max = 100.0,
- update=prop_update_supertorus)
- st_n2: FloatProperty(name = "Cross manipulator",
- description = "Manipulates the shape of the cross-section",
- default = 1.0, min = 0.01, max = 100.0,
- update=prop_update_supertorus)
- st_ie: BoolProperty(name = "Use Int.+Ext. radii",
- description = "Use internal and external radii",
- default = False,
- update=prop_update_supertorus)
- st_edit: BoolProperty(name="",
- description="",
- default=False,
- options={'HIDDEN'},
- update=prop_update_supertorus)
-
-########################Loft
- loft_n: IntProperty(name = "Segments",
- description = "Vertical segments",
- default = 16, min = 3, max = 720)
- loft_rings_bottom: IntProperty(name = "Bottom",
- description = "Bottom rings",
- default = 5, min = 2, max = 100)
- loft_rings_side: IntProperty(name = "Side",
- description = "Side rings",
- default = 10, min = 2, max = 100)
- loft_thick: FloatProperty(name = "Thickness",
- description = "Manipulates the shape of the Ring",
- default = 0.3, min = 0.01, max = 1.0)
- loft_r: FloatProperty(name = "Radius",
- description = "Radius",
- default = 1, min = 0.01, max = 10)
- loft_height: FloatProperty(name = "Height",
- description = "Manipulates the shape of the Ring",
- default = 2, min = 0.01, max = 10.0)
-
-###################Prism
- prism_n: IntProperty(name = "Sides",
- description = "Number of sides",
- default = 5, min = 3, max = 720)
- prism_r: FloatProperty(name = "Radius",
- description = "Radius",
- default = 1.0)
-
-##################Isosurface
- iso_function_text: StringProperty(name="Function Text",maxlen=1024)#,update=iso_props_update_callback)
-
-##################PolygonToCircle
- polytocircle_resolution: IntProperty(name = "Resolution",
- description = "",
- default = 3, min = 0, max = 256)
- polytocircle_ngon: IntProperty(name = "NGon",
- description = "",
- min = 3, max = 64,default = 5)
- polytocircle_ngonR: FloatProperty(name = "NGon Radius",
- description = "",
- default = 0.3)
- polytocircle_circleR: FloatProperty(name = "Circle Radius",
- description = "",
- default = 1.0)
+ name="Gradient",
+ description="Max gradient",
+ min=0.0001, max=100.00, default=10.00,
+ update=prop_update_supertorus
+ )
+
+ st_R: FloatProperty(
+ name = "big radius",
+ description = "The radius inside the tube",
+ default = 1.0, min = 0.01, max = 100.0,
+ update=prop_update_supertorus
+ )
+
+ st_r: FloatProperty(
+ name = "small radius",
+ description = "The radius of the tube",
+ default = 0.3, min = 0.01, max = 100.0,
+ update=prop_update_supertorus
+ )
+
+ st_u: IntProperty(
+ name = "U-segments",
+ description = "radial segmentation",
+ default = 16, min = 3, max = 265,
+ update=prop_update_supertorus
+ )
+
+ st_v: IntProperty(
+ name = "V-segments",
+ description = "lateral segmentation",
+ default = 8, min = 3, max = 265,
+ update=prop_update_supertorus
+ )
+
+ st_n1: FloatProperty(
+ name = "Ring manipulator",
+ description = "Manipulates the shape of the Ring",
+ default = 1.0, min = 0.01, max = 100.0,
+ update=prop_update_supertorus
+ )
+
+ st_n2: FloatProperty(
+ name = "Cross manipulator",
+ description = "Manipulates the shape of the cross-section",
+ default = 1.0, min = 0.01, max = 100.0,
+ update=prop_update_supertorus
+ )
+
+ st_ie: BoolProperty(
+ name = "Use Int.+Ext. radii",
+ description = "Use internal and external radii",
+ default = False,
+ update=prop_update_supertorus
+ )
+
+ st_edit: BoolProperty(
+ name="",
+ description="",
+ default=False,
+ options={'HIDDEN'},
+ update=prop_update_supertorus
+ )
+
+ ########################Loft
+ loft_n: IntProperty(
+ name = "Segments",
+ description = "Vertical segments",
+ default = 16, min = 3, max = 720
+ )
+
+ loft_rings_bottom: IntProperty(
+ name = "Bottom",
+ description = "Bottom rings",
+ default = 5, min = 2, max = 100
+ )
+
+ loft_rings_side: IntProperty(
+ name = "Side",
+ description = "Side rings",
+ default = 10, min = 2, max = 100
+ )
+
+ loft_thick: FloatProperty(
+ name = "Thickness",
+ description = "Manipulates the shape of the Ring",
+ default = 0.3, min = 0.01, max = 1.0
+ )
+
+ loft_r: FloatProperty(
+ name = "Radius",
+ description = "Radius",
+ default = 1, min = 0.01, max = 10
+ )
+
+ loft_height: FloatProperty(
+ name = "Height",
+ description = "Manipulates the shape of the Ring",
+ default = 2, min = 0.01, max = 10.0
+ )
+
+ ###################Prism
+ prism_n: IntProperty(
+ name = "Sides",
+ description = "Number of sides",
+ default = 5, min = 3, max = 720
+ )
+
+ prism_r: FloatProperty(
+ name = "Radius",
+ description = "Radius",
+ default = 1.0
+ )
+
+ ##################Isosurface
+ iso_function_text: StringProperty(
+ name="Function Text",
+ maxlen=1024
+ ) #,update=iso_props_update_callback)
+
+ ##################PolygonToCircle
+ polytocircle_resolution: IntProperty(
+ name = "Resolution",
+ description = "",
+ default = 3, min = 0, max = 256
+ )
+
+ polytocircle_ngon: IntProperty(
+ name = "NGon",
+ description = "",
+ min = 3, max = 64,default = 5
+ )
+
+ polytocircle_ngonR: FloatProperty(
+ name = "NGon Radius",
+ description = "",
+ default = 0.3
+ )
+
+ polytocircle_circleR: FloatProperty(
+ name = "Circle Radius",
+ description = "",
+ default = 1.0
+ )
###############################################################################
# Modifiers POV properties.
###############################################################################
-#class RenderPovSettingsModifier(PropertyGroup):
+# class RenderPovSettingsModifier(PropertyGroup):
boolean_mod: EnumProperty(
- name="Operation",
- description="Choose the type of calculation for Boolean modifier",
- items=(("BMESH", "Use the BMesh Boolean Solver", ""),
- ("CARVE", "Use the Carve Boolean Solver", ""),
- ("POV", "Use POV Constructive Solid Geometry", "")),
- default="BMESH")
-
-#################Avogadro
+ name="Operation",
+ description="Choose the type of calculation for Boolean modifier",
+ items=(("BMESH", "Use the BMesh Boolean Solver", ""),
+ ("CARVE", "Use the Carve Boolean Solver", ""),
+ ("POV", "Use POV Constructive Solid Geometry", "")),
+ default="BMESH",
+ )
+
+ #################Avogadro
# filename_ext = ".png"
# filter_glob = StringProperty(
@@ -4189,238 +4869,310 @@ class RenderPovSettingsObject(PropertyGroup):
# Camera POV properties.
###############################################################################
class RenderPovSettingsCamera(PropertyGroup):
+
"""Declare camera properties controllable in UI and translated to POV."""
- #DOF Toggle
+
+ # DOF Toggle
dof_enable: BoolProperty(
- name="Depth Of Field", description="Enable POV Depth Of Field ",
- default=False)
+ name="Depth Of Field",
+ description="Enable POV Depth Of Field ",
+ default=False,
+ )
# Aperture (Intensity of the Blur)
dof_aperture: FloatProperty(
- name="Aperture",
- description="Similar to a real camera's aperture effect over focal blur (though not "
- "in physical units and independent of focal length). "
- "Increase to get more blur",
- min=0.01, max=1.00, default=0.50)
+ name="Aperture",
+ description="Similar to a real camera's aperture effect over focal blur (though not "
+ "in physical units and independent of focal length). "
+ "Increase to get more blur",
+ min=0.01, max=1.00, default=0.50
+ )
# Aperture adaptive sampling
dof_samples_min: IntProperty(
- name="Samples Min", description="Minimum number of rays to use for each pixel",
- min=1, max=128, default=3)
+ name="Samples Min",
+ description="Minimum number of rays to use for each pixel",
+ min=1, max=128, default=3
+ )
dof_samples_max: IntProperty(
- name="Samples Max", description="Maximum number of rays to use for each pixel",
- min=1, max=128, default=9)
+ name="Samples Max",
+ description="Maximum number of rays to use for each pixel",
+ min=1, max=128, default=9
+ )
dof_variance: IntProperty(
- name="Variance",
- description="Minimum threshold (fractional value) for adaptive DOF sampling (up "
- "increases quality and render time). The value for the variance should "
- "be in the range of the smallest displayable color difference",
- min=1, max=100000, soft_max=10000, default=8192)
+ name="Variance",
+ description="Minimum threshold (fractional value) for adaptive DOF sampling (up "
+ "increases quality and render time). The value for the variance should "
+ "be in the range of the smallest displayable color difference",
+ min=1, max=100000, soft_max=10000, default=8192
+ )
dof_confidence: FloatProperty(
- name="Confidence",
- description="Probability to reach the real color value. Larger confidence values "
- "will lead to more samples, slower traces and better images",
- min=0.01, max=0.99, default=0.20)
+ name="Confidence",
+ description="Probability to reach the real color value. Larger confidence values "
+ "will lead to more samples, slower traces and better images",
+ min=0.01, max=0.99, default=0.20
+ )
normal_enable: BoolProperty(name="Perturbated Camera", default=False)
+
cam_normal: FloatProperty(name="Normal Strength", min=0.0, max=1.0, default=0.0)
+
normal_patterns: EnumProperty(
- name="Pattern",
- description="",
- items=(('agate', "Agate", ""), ('boxed', "Boxed", ""), ('bumps', "Bumps", ""), ('cells', "Cells", ""),
- ('crackle', "Crackle", ""),('dents', "Dents", ""),
- ('granite', "Granite", ""),
- ('leopard', "Leopard", ""),
- ('marble', "Marble", ""), ('onion', "Onion", ""), ('pavement', "Pavement", ""), ('planar', "Planar", ""),
- ('quilted', "Quilted", ""), ('ripples', "Ripples", ""), ('radial', "Radial", ""),
- ('spherical', "Spherical", ""),('spiral1', "Spiral1", ""), ('spiral2', "Spiral2", ""), ('spotted', "Spotted", ""),
- ('square', "Square", ""),('tiling', "Tiling", ""),
- ('waves', "Waves", ""), ('wood', "Wood", ""),('wrinkles', "Wrinkles", "")),
- default='agate')
+ name="Pattern",
+ description="",
+ items=(('agate', "Agate", ""), ('boxed', "Boxed", ""), ('bumps', "Bumps", ""), ('cells', "Cells", ""),
+ ('crackle', "Crackle", ""),('dents', "Dents", ""),
+ ('granite', "Granite", ""),
+ ('leopard', "Leopard", ""),
+ ('marble', "Marble", ""), ('onion', "Onion", ""), ('pavement', "Pavement", ""), ('planar', "Planar", ""),
+ ('quilted', "Quilted", ""), ('ripples', "Ripples", ""), ('radial', "Radial", ""),
+ ('spherical', "Spherical", ""),('spiral1', "Spiral1", ""), ('spiral2', "Spiral2", ""), ('spotted', "Spotted", ""),
+ ('square', "Square", ""),('tiling', "Tiling", ""),
+ ('waves', "Waves", ""), ('wood', "Wood", ""),('wrinkles', "Wrinkles", "")),
+ default='agate',
+ )
+
turbulence: FloatProperty(name="Turbulence", min=0.0, max=100.0, default=0.1)
+
scale: FloatProperty(name="Scale", min=0.0,default=1.0)
##################################CustomPOV Code############################
# Only DUMMIES below for now:
replacement_text: StringProperty(
- name="Texts in blend file",
- description="Type the declared name in custom POV code or an external .inc "
- "it points at. camera {} expected",
- default="")
+ name="Texts in blend file",
+ description="Type the declared name in custom POV code or an external .inc "
+ "it points at. camera {} expected",
+ default="",
+ )
###############################################################################
# Light POV properties.
###############################################################################
class RenderPovSettingsLight(PropertyGroup):
+
"""Declare light properties controllable in UI and translated to POV."""
- #former Space properties from removed Blender Internal
+
+ # former Space properties from removed Blender Internal
use_limited_texture_context: BoolProperty(
- name="",
- description="Use the limited version of texture user (for ‘old shading’ mode)",
- default=True)
+ name="",
+ description="Use the limited version of texture user (for ‘old shading’ mode)",
+ default=True,
+ )
+
texture_context: EnumProperty(
- name="Texture context",
- description="Type of texture data to display and edit",
- items=(('MATERIAL', "", "Show material textures", "MATERIAL",0), #"Show material textures"
- ('WORLD', "", "Show world textures", "WORLD",1), #"Show world textures"
- ('LAMP', "", "Show lamp textures", "LIGHT",2), #"Show lamp textures"
- ('PARTICLES', "", "Show particles textures", "PARTICLES",3), #"Show particles textures"
- ('LINESTYLE', "", "Show linestyle textures", "LINE_DATA",4), #"Show linestyle textures"
- ('OTHER', "", "Show other data textures", "TEXTURE_DATA",5)), #"Show other data textures"
- default = 'MATERIAL')
-
+ name="Texture context",
+ description="Type of texture data to display and edit",
+ items=(('MATERIAL', "", "Show material textures", "MATERIAL",0), # "Show material textures"
+ ('WORLD', "", "Show world textures", "WORLD",1), # "Show world textures"
+ ('LAMP', "", "Show lamp textures", "LIGHT",2), # "Show lamp textures"
+ ('PARTICLES', "", "Show particles textures", "PARTICLES",3), # "Show particles textures"
+ ('LINESTYLE', "", "Show linestyle textures", "LINE_DATA",4), # "Show linestyle textures"
+ ('OTHER', "", "Show other data textures", "TEXTURE_DATA",5)), # "Show other data textures"
+ default = 'MATERIAL',
+ )
+
shadow_method: EnumProperty(
- name="Shadow",
- description="",
- items=(("NOSHADOW", "No Shadow", "No Shadow"),
- ("RAY_SHADOW", "Ray Shadow", "Ray Shadow, Use ray tracing for shadow")),
- default="RAY_SHADOW")
+ name="Shadow",
+ description="",
+ items=(("NOSHADOW", "No Shadow", "No Shadow"),
+ ("RAY_SHADOW", "Ray Shadow", "Ray Shadow, Use ray tracing for shadow")),
+ default="RAY_SHADOW",
+ )
+
active_texture_index: IntProperty(
- name = "Index for texture_slots",
- default = 0)
+ name = "Index for texture_slots",
+ default = 0
+ )
+
use_halo: BoolProperty(
- name="Halo", description="Render spotlight with a volumetric halo",
- default=False)
+ name="Halo",
+ description="Render spotlight with a volumetric halo",
+ default=False,
+ )
+
halo_intensity: FloatProperty(
- name="Halo intensity",
- description="Brightness of the spotlight halo cone",
- soft_min=0.0, soft_max=1.0, default=1.0)
+ name="Halo intensity",
+ description="Brightness of the spotlight halo cone",
+ soft_min=0.0, soft_max=1.0, default=1.0
+ )
+
shadow_ray_samples_x: IntProperty(
- name = "Number of samples taken extra (samples x samples)",
- min=1, soft_max=64,
- default = 1)
+ name = "Number of samples taken extra (samples x samples)",
+ min=1, soft_max=64,
+ default = 1,
+ )
+
shadow_ray_samples_y: IntProperty(
- name = "Number of samples taken extra (samples x samples)",
- min=1, soft_max=64,
- default = 1)
+ name = "Number of samples taken extra (samples x samples)",
+ min=1, soft_max=64,
+ default = 1,
+ )
+
shadow_ray_sample_method: EnumProperty(
- name="",
- description="Method for generating shadow samples: Adaptive QMC is fastest, Constant QMC is less noisy but slower",
- items=(('ADAPTIVE_QMC', "", "Halton samples distribution", "",0),
- ('CONSTANT_QMC', "", "QMC samples distribution", "",1),
- ('CONSTANT_JITTERED', "", "Uses POV jitter keyword", "",2)), #"Show other data textures"
- default = 'CONSTANT_JITTERED')
+ name="",
+ description="Method for generating shadow samples: Adaptive QMC is fastest, Constant QMC is less noisy but slower",
+ items=(('ADAPTIVE_QMC', "", "Halton samples distribution", "",0),
+ ('CONSTANT_QMC', "", "QMC samples distribution", "",1),
+ ('CONSTANT_JITTERED', "", "Uses POV jitter keyword", "",2)), # "Show other data textures"
+ default = 'CONSTANT_JITTERED',
+ )
+
use_jitter: BoolProperty(
- name="Jitter", description="Use noise for sampling (Constant Jittered sampling)",
- default=False)
+ name="Jitter",
+ description="Use noise for sampling (Constant Jittered sampling)",
+ default=False,
+ )
+
###############################################################################
# World POV properties.
###############################################################################
class RenderPovSettingsWorld(PropertyGroup):
+
"""Declare world properties controllable in UI and translated to POV."""
- #former Space properties from removed Blender Internal
+
+ # former Space properties from removed Blender Internal
use_limited_texture_context: BoolProperty(
- name="",
- description="Use the limited version of texture user (for ‘old shading’ mode)",
- default=True)
+ name="",
+ description="Use the limited version of texture user (for ‘old shading’ mode)",
+ default=True,
+ )
+
texture_context: EnumProperty(
- name="Texture context",
- description="Type of texture data to display and edit",
- items=(('MATERIAL', "", "Show material textures", "MATERIAL",0), #"Show material textures"
- ('WORLD', "", "Show world textures", "WORLD",1), #"Show world textures"
- ('LAMP', "", "Show lamp textures", "LIGHT",2), #"Show lamp textures"
- ('PARTICLES', "", "Show particles textures", "PARTICLES",3), #"Show particles textures"
- ('LINESTYLE', "", "Show linestyle textures", "LINE_DATA",4), #"Show linestyle textures"
- ('OTHER', "", "Show other data textures", "TEXTURE_DATA",5)), #"Show other data textures"
- default = 'MATERIAL')
+ name="Texture context",
+ description="Type of texture data to display and edit",
+ items=(('MATERIAL', "", "Show material textures", "MATERIAL",0), # "Show material textures"
+ ('WORLD', "", "Show world textures", "WORLD",1), # "Show world textures"
+ ('LAMP', "", "Show lamp textures", "LIGHT",2), # "Show lamp textures"
+ ('PARTICLES', "", "Show particles textures", "PARTICLES",3), # "Show particles textures"
+ ('LINESTYLE', "", "Show linestyle textures", "LINE_DATA",4), # "Show linestyle textures"
+ ('OTHER', "", "Show other data textures", "TEXTURE_DATA",5)), # "Show other data textures"
+ default = 'MATERIAL',
+ )
use_sky_blend: BoolProperty(
- name="Blend Sky", description="Render background with natural progression from horizon to zenith",
- default=False)
+ name="Blend Sky",
+ description="Render background with natural progression from horizon to zenith",
+ default=False,
+ )
+
use_sky_paper: BoolProperty(
- name="Paper Sky", description="Flatten blend or texture coordinates",
- default=False)
+ name="Paper Sky",
+ description="Flatten blend or texture coordinates",
+ default=False,
+ )
+
use_sky_real: BoolProperty(
- name="Real Sky", description="Render background with a real horizon, relative to the camera angle",
- default=False)
-
+ name="Real Sky",
+ description="Render background with a real horizon, relative to the camera angle",
+ default=False,
+ )
+
horizon_color: FloatVectorProperty(
- name="Horizon Color",
- description="Color at the horizon",
- precision=4, step=0.01, min=0, soft_max=1,
- default=(0.0, 0.0, 0.0), options={'ANIMATABLE'}, subtype='COLOR',
+ name="Horizon Color",
+ description="Color at the horizon",
+ precision=4, step=0.01, min=0, soft_max=1,
+ default=(0.0, 0.0, 0.0), options={'ANIMATABLE'}, subtype='COLOR',
)
+
zenith_color: FloatVectorProperty(
- name="Zenith Color",
- description="Color at the zenith",
- precision=4, step=0.01, min=0, soft_max=1,
- default=(0.0, 0.0, 0.0), options={'ANIMATABLE'}, subtype='COLOR',
+ name="Zenith Color",
+ description="Color at the zenith",
+ precision=4, step=0.01, min=0, soft_max=1,
+ default=(0.0, 0.0, 0.0), options={'ANIMATABLE'}, subtype='COLOR',
)
+
ambient_color: FloatVectorProperty(
- name="Ambient Color",
- description="Ambient color of the world",
- precision=4, step=0.01, min=0, soft_max=1,
- default=(0.0, 0.0, 0.0), options={'ANIMATABLE'}, subtype='COLOR',
+ name="Ambient Color",
+ description="Ambient color of the world",
+ precision=4, step=0.01, min=0, soft_max=1,
+ default=(0.0, 0.0, 0.0), options={'ANIMATABLE'}, subtype='COLOR',
)
active_texture_index: IntProperty(
- name = "Index for texture_slots",
- default = 0)
+ name = "Index for texture_slots",
+ default = 0
+ )
+
+
class WorldTextureSlot(PropertyGroup):
"""Declare world texture slot properties controllable in UI and translated to POV."""
+
blend_factor: FloatProperty(
- name="Blend",
- description="Amount texture affects color progression of the "
- "background",
- soft_min=0.0, soft_max=1.0, default=1.0)
+ name="Blend",
+ description="Amount texture affects color progression of the "
+ "background",
+ soft_min=0.0, soft_max=1.0, default=1.0
+ )
horizon_factor: FloatProperty(
- name="Horizon",
- description="Amount texture affects color of the horizon"
- "",
- soft_min=0.0, soft_max=1.0, default=1.0)
+ name="Horizon",
+ description="Amount texture affects color of the horizon",
+ soft_min=0.0, soft_max=1.0, default=1.0,
+ )
object: StringProperty(
- name="Object",
- description="Object to use for mapping with Object texture coordinates",
- default="")
+ name="Object",
+ description="Object to use for mapping with Object texture coordinates",
+ default="",
+ )
texture_coords: EnumProperty(
- name="Coordinates",
- description="Texture coordinates used to map the texture onto the background",
- items=(("VIEW", "View", "Use view vector for the texture coordinates"),
- ("GLOBAL", "Global", "Use global coordinates for the texture coordinates (interior mist)"),
- ("ANGMAP", "AngMap", "Use 360 degree angular coordinates, e.g. for spherical light probes"),
- ("SPHERE", "Sphere", "For 360 degree panorama sky, spherical mapped, only top half"),
- ("EQUIRECT", "Equirectangular", "For 360 degree panorama sky, equirectangular mapping"),
- ("TUBE", "Tube", "For 360 degree panorama sky, cylindrical mapped, only top half"),
- ("OBJECT", "Object", "Use linked object’s coordinates for texture coordinates")),
- default="VIEW")
+ name="Coordinates",
+ description="Texture coordinates used to map the texture onto the background",
+ items=(("VIEW", "View", "Use view vector for the texture coordinates"),
+ ("GLOBAL", "Global", "Use global coordinates for the texture coordinates (interior mist)"),
+ ("ANGMAP", "AngMap", "Use 360 degree angular coordinates, e.g. for spherical light probes"),
+ ("SPHERE", "Sphere", "For 360 degree panorama sky, spherical mapped, only top half"),
+ ("EQUIRECT", "Equirectangular", "For 360 degree panorama sky, equirectangular mapping"),
+ ("TUBE", "Tube", "For 360 degree panorama sky, cylindrical mapped, only top half"),
+ ("OBJECT", "Object", "Use linked object’s coordinates for texture coordinates")),
+ default="VIEW",
+ )
use_map_blend: BoolProperty(
- name="Blend Map", description="Affect the color progression of the background",
- default=True)
+ name="Blend Map",
+ description="Affect the color progression of the background",
+ default=True,
+ )
use_map_horizon: BoolProperty(
- name="Horizon Map", description="Affect the color of the horizon",
- default=False)
+ name="Horizon Map",
+ description="Affect the color of the horizon",
+ default=False,
+ )
use_map_zenith_down: BoolProperty(
- name="", description="Affect the color of the zenith below",
- default=False)
+ name="",
+ description="Affect the color of the zenith below",
+ default=False,
+ )
use_map_zenith_up: BoolProperty(
- name="Zenith Up Map", description="Affect the color of the zenith above",
- default=False)
+ name="Zenith Up Map",
+ description="Affect the color of the zenith above",
+ default=False,
+ )
zenith_down_factor: FloatProperty(
- name="Zenith Down",
- description="Amount texture affects color of the zenith below",
- soft_min=0.0, soft_max=1.0, default=1.0)
+ name="Zenith Down",
+ description="Amount texture affects color of the zenith below",
+ soft_min=0.0, soft_max=1.0, default=1.0
+ )
zenith_up_factor: FloatProperty(
- name="Zenith Up",
- description="Amount texture affects color of the zenith above",
- soft_min=0.0, soft_max=1.0, default=1.0)
+ name="Zenith Up",
+ description="Amount texture affects color of the zenith above",
+ soft_min=0.0, soft_max=1.0, default=1.0
+ )
'''
-#class WORLD_TEXTURE_SLOTS_UL_layerlist(bpy.types.UIList):
+# class WORLD_TEXTURE_SLOTS_UL_layerlist(bpy.types.UIList):
# texture_slots:
-
+
class WorldTextureSlots(bpy.props.PropertyGroup):
index = bpy.prop.PropertyInt(name='index')
- #foo = random prop
+ # foo = random prop
bpy.types.World.texture_slots = bpy.props.CollectionProperty(type=PropertyGroup)
@@ -4429,13 +5181,13 @@ for i in range(18): # length of world texture slots
'''
class MATERIAL_TEXTURE_SLOTS_UL_POV_layerlist(bpy.types.UIList):
-# texture_slots:
+ # texture_slots:
index: bpy.props.IntProperty(name='index')
- #foo = random prop
+ # foo = random prop
def draw_item(self, context, layout, data, item, icon, active_data, active_propname):
ob = data
slot = item
- #ma = slot.name
+ # ma = slot.name
# draw_item must handle the three layout types... Usually 'DEFAULT' and 'COMPACT' can share the same code.
if self.layout_type in {'DEFAULT', 'COMPACT'}:
# You should always start your row layout by a label (icon + text), or a non-embossed text field,
@@ -4449,49 +5201,60 @@ class MATERIAL_TEXTURE_SLOTS_UL_POV_layerlist(bpy.types.UIList):
# 'GRID' layout type should be as compact as possible (typically a single icon!).
elif self.layout_type in {'GRID'}:
layout.alignment = 'CENTER'
- layout.label(text="", icon_value=icon)
-
+ layout.label(text="", icon_value=icon)
+
###############################################################################
# Text POV properties.
###############################################################################
+
+
class RenderPovSettingsText(PropertyGroup):
+
"""Declare text properties to use UI as an IDE or render text snippets to POV."""
+
custom_code: EnumProperty(
- name="Custom Code",
- description="rendered source: Both adds text at the "
- "top of the exported POV file",
- items=(("3dview", "View", ""),
- ("text", "Text", ""),
- ("both", "Both", "")),
- default="text")
+ name="Custom Code",
+ description="rendered source: Both adds text at the "
+ "top of the exported POV file",
+ items=(("3dview", "View", ""),
+ ("text", "Text", ""),
+ ("both", "Both", "")),
+ default="text",
+ )
###############################################################################
# Povray Preferences.
###############################################################################
+
+
class PovrayPreferences(AddonPreferences):
+
"""Declare preference variables to set up POV binary."""
+
bl_idname = __name__
branch_feature_set_povray: EnumProperty(
- name="Feature Set",
- description="Choose between official (POV-Ray) or (UberPOV) "
- "development branch features to write in the pov file",
- items= (('povray', 'Official POV-Ray', '','PLUGIN', 0),
- ('uberpov', 'Unofficial UberPOV', '', 'PLUGIN', 1)),
- default='povray'
- )
+ name="Feature Set",
+ description="Choose between official (POV-Ray) or (UberPOV) "
+ "development branch features to write in the pov file",
+ items= (('povray', 'Official POV-Ray', '','PLUGIN', 0),
+ ('uberpov', 'Unofficial UberPOV', '', 'PLUGIN', 1)),
+ default='povray',
+ )
filepath_povray: StringProperty(
- name="Binary Location",
- description="Path to renderer executable",
- subtype='FILE_PATH',
- )
+ name="Binary Location",
+ description="Path to renderer executable",
+ subtype='FILE_PATH',
+ )
+
docpath_povray: StringProperty(
- name="Includes Location",
- description="Path to Insert Menu files",
- subtype='FILE_PATH',
- )
+ name="Includes Location",
+ description="Path to Insert Menu files",
+ subtype='FILE_PATH',
+ )
+
def draw(self, context):
layout = self.layout
layout.prop(self, "branch_feature_set_povray")
@@ -4502,13 +5265,13 @@ class PovrayPreferences(AddonPreferences):
classes = (
PovrayPreferences,
RenderPovSettingsCamera,
- RenderPovSettingsLight,
+ RenderPovSettingsLight,
RenderPovSettingsWorld,
MaterialTextureSlot,
WorldTextureSlot,
RenderPovSettingsMaterial,
MaterialRaytraceTransparency,
- MaterialRaytraceMirror,
+ MaterialRaytraceMirror,
MaterialSubsurfaceScattering,
MaterialStrandSettings,
RenderPovSettingsObject,
@@ -4520,17 +5283,17 @@ classes = (
def register():
- #bpy.utils.register_module(__name__) #DEPRECATED Now imported from bpy.utils import register_class
+ # bpy.utils.register_module(__name__) # DEPRECATED Now imported from bpy.utils import register_class
for cls in classes:
register_class(cls)
-
+
render.register()
ui.register()
primitives.register()
nodes.register()
- '''
+ '''
bpy.types.VIEW3D_MT_add.prepend(ui.menu_func_add)
bpy.types.TOPBAR_MT_file_import.append(ui.menu_func_import)
bpy.types.TEXT_MT_templates.append(ui.menu_func_templates)
@@ -4539,18 +5302,18 @@ def register():
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)
+ # addon_utils.enable("add_mesh_extra_objects", default_set=False, persistent=True)
- #bpy.types.TEXTURE_PT_context_texture.prepend(TEXTURE_PT_povray_type)
+ # bpy.types.TEXTURE_PT_context_texture.prepend(TEXTURE_PT_povray_type)
'''
bpy.types.NODE_HT_header.append(ui.menu_func_nodes)
nodeitems_utils.register_node_categories("POVRAYNODES", node_categories)
bpy.types.Scene.pov = PointerProperty(type=RenderPovSettingsScene)
- #bpy.types.Modifier.pov = PointerProperty(type=RenderPovSettingsModifier)
+ # bpy.types.Modifier.pov = PointerProperty(type=RenderPovSettingsModifier)
bpy.types.Material.pov_raytrace_transparency = PointerProperty(type=MaterialRaytraceTransparency)
bpy.types.Material.pov = PointerProperty(type=RenderPovSettingsMaterial)
bpy.types.Material.pov_subsurface_scattering = PointerProperty(type=MaterialSubsurfaceScattering)
- bpy.types.Material.strand = PointerProperty(type= MaterialStrandSettings)
+ bpy.types.Material.strand = PointerProperty(type=MaterialStrandSettings)
bpy.types.Material.pov_raytrace_mirror = PointerProperty(type=MaterialRaytraceMirror)
bpy.types.Texture.pov = PointerProperty(type=RenderPovSettingsTexture)
bpy.types.Object.pov = PointerProperty(type=RenderPovSettingsObject)
@@ -4558,11 +5321,10 @@ def register():
bpy.types.Light.pov = PointerProperty(type=RenderPovSettingsLight)
bpy.types.World.pov = PointerProperty(type=RenderPovSettingsWorld)
bpy.types.Material.pov_texture_slots = CollectionProperty(type=MaterialTextureSlot)
- bpy.types.World.texture_slots = CollectionProperty(type = WorldTextureSlot)
+ bpy.types.World.texture_slots = CollectionProperty(type=WorldTextureSlot)
bpy.types.Text.pov = PointerProperty(type=RenderPovSettingsText)
-
def unregister():
del bpy.types.Scene.pov
del bpy.types.Material.pov
@@ -4570,20 +5332,20 @@ def unregister():
del bpy.types.Material.strand
del bpy.types.Material.pov_raytrace_mirror
del bpy.types.Material.pov_raytrace_transparency
- #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
del bpy.types.Light.pov
del bpy.types.World.pov
- del bpy.types.Material.pov_texture_slots
+ del bpy.types.Material.pov_texture_slots
del bpy.types.Text.pov
nodeitems_utils.unregister_node_categories("POVRAYNODES")
bpy.types.NODE_HT_header.remove(ui.menu_func_nodes)
'''
- #bpy.types.TEXTURE_PT_context_texture.remove(TEXTURE_PT_povray_type)
- #addon_utils.disable("add_mesh_extra_objects", default_set=False)
+ # 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_POV_world.remove(ui.world_panel_func)
bpy.types.LIGHT_PT_POV_light.remove(ui.light_panel_func)
bpy.types.RENDER_PT_POV_radiosity.remove(ui.rad_panel_func)
@@ -4591,7 +5353,7 @@ def unregister():
bpy.types.TOPBAR_MT_file_import.remove(ui.menu_func_import)
bpy.types.VIEW3D_MT_add.remove(ui.menu_func_add)
'''
- #bpy.utils.unregister_module(__name__)
+ # bpy.utils.unregister_module(__name__)
nodes.unregister()
primitives.unregister()
@@ -4600,7 +5362,7 @@ def unregister():
for cls in reversed(classes):
unregister_class(cls)
-
+
if __name__ == "__main__":
diff --git a/render_povray/primitives.py b/render_povray/primitives.py
index c1e37ab3..4d109958 100644
--- a/render_povray/primitives.py
+++ b/render_povray/primitives.py
@@ -1468,10 +1468,10 @@ def pov_parametric_define(context, op, ob):
bpy.ops.object.mode_set(mode="EDIT")
bpy.ops.mesh.hide(unselected=False)
bpy.ops.object.mode_set(mode="OBJECT")
-
+
class POVRAY_OT_parametric_add(bpy.types.Operator):
"""Add the representation of POV parametric surfaces using pov_parametric_define() function."""
-
+
bl_idname = "pov.addparametric"
bl_label = "Parametric"
bl_description = "Add Paramertic"
@@ -1517,7 +1517,7 @@ class POVRAY_OT_parametric_update(bpy.types.Operator):
Delete its previous proxy geometry and rerun pov_parametric_define() function
with the new parameters"""
-
+
bl_idname = "pov.parametric_update"
bl_label = "Update"
bl_description = "Update parametric object"
diff --git a/render_povray/render.py b/render_povray/render.py
index ec5b6689..6af0b692 100644
--- a/render_povray/render.py
+++ b/render_povray/render.py
@@ -170,7 +170,7 @@ def string_strip_hyphen(name):
def safety(name, Level):
"""append suffix characters to names of various material declinations.
-
+
Material declinations are necessary to POV syntax and used in shading.py
by the povHasnoSpecularMaps function to create the finish map trick and
the suffixes avoid name collisions.
@@ -180,7 +180,7 @@ def safety(name, Level):
Level=1 is for texture with No specular nor Mirror reflection
Level=2 is for texture with translation of spec and mir levels
for when no map influences them
- Level=3 is for texture with Maximum Spec and Mirror
+ Level=3 is for texture with Maximum Spec and Mirror
"""
try:
@@ -309,7 +309,7 @@ def write_global_setting(scene,file):
def write_object_modifiers(scene,ob,File):
"""Translate some object level POV statements from Blender UI
to POV syntax and write to exported file """
-
+
# Maybe return that string to be added instead of directly written.
'''XXX WIP
@@ -410,7 +410,7 @@ def write_pov(filename, scene=None, info_callback=None):
tab = setTab(scene.pov.indentation_character, scene.pov.indentation_spaces)
if not scene.pov.tempfiles_enable:
def tabWrite(str_o):
- """Indent POV syntax from brackets levels and write to exported file """
+ """Indent POV syntax from brackets levels and write to exported file """
global tabLevel
brackets = str_o.count("{") - str_o.count("}") + str_o.count("[") - str_o.count("]")
if brackets < 0:
@@ -425,12 +425,12 @@ def write_pov(filename, scene=None, info_callback=None):
tabLevel = tabLevel + brackets
else:
def tabWrite(str_o):
- """write directly to exported file if user checked autonamed temp files (faster)."""
+ """write directly to exported file if user checked autonamed temp files (faster)."""
file.write(str_o)
def uniqueName(name, nameSeq):
- """Increment any generated POV name that could get identical to avoid collisions"""
+ """Increment any generated POV name that could get identical to avoid collisions"""
if name not in nameSeq:
name = string_strip_hyphen(name)
@@ -465,8 +465,8 @@ def write_pov(filename, scene=None, info_callback=None):
def writeObjectMaterial(material, ob):
"""Translate some object level material from Blender UI (VS data level)
- to POV interior{} syntax and write it to exported file """
-
+ to POV interior{} syntax and write it to exported file """
+
# DH - modified some variables to be function local, avoiding RNA write
# this should be checked to see if it is functionally correct
@@ -484,7 +484,7 @@ def write_pov(filename, scene=None, info_callback=None):
tabWrite("ior %.6f\n" % material.pov_raytrace_transparency.ior)
elif material.pov.transparency_method=='Z_TRANSPARENCY':
tabWrite("interior {\n")
- tabWrite("ior 1.0\n")
+ tabWrite("ior 1.0\n")
else:
tabWrite("interior {\n")
tabWrite("ior %.6f\n" % material.pov_raytrace_transparency.ior)
@@ -3606,7 +3606,7 @@ def write_pov(filename, scene=None, info_callback=None):
tabWrite("}\n")
def exportCustomCode():
- """write all POV user defined custom code to exported file """
+ """write all POV user defined custom code to exported file """
# Write CurrentAnimation Frame for use in Custom POV Code
file.write("#declare CURFRAMENUM = %d;\n" % bpy.context.scene.frame_current)
#Change path and uncomment to add an animated include file by hand:
@@ -3828,7 +3828,7 @@ class PovrayRender(bpy.types.RenderEngine):
@staticmethod
def _locate_binary():
- """Identify POV engine"""
+ """Identify POV engine"""
addon_prefs = bpy.context.preferences.addons[__package__].preferences
# Use the system preference if its set.
@@ -3879,7 +3879,7 @@ class PovrayRender(bpy.types.RenderEngine):
return ""
def _export(self, depsgraph, povPath, renderImagePath):
- """gather all necessary output files paths user defined and auto generated and export there"""
+ """gather all necessary output files paths user defined and auto generated and export there"""
import tempfile
scene = bpy.context.scene
if scene.pov.tempfiles_enable:
@@ -3989,7 +3989,7 @@ class PovrayRender(bpy.types.RenderEngine):
# and Windows does not know how to delete a file in use!
time.sleep(self.DELAY)
def render(self, depsgraph):
- """Export necessary files from text editor and render image."""
+ """Export necessary files from text editor and render image."""
import tempfile
scene = bpy.context.scene
r = scene.render
diff --git a/render_povray/shading.py b/render_povray/shading.py
index 7c229ecb..07898245 100644
--- a/render_povray/shading.py
+++ b/render_povray/shading.py
@@ -249,13 +249,13 @@ def writeMaterial(using_uberpov, DEF_MAT_NAME, scene, tabWrite, safety, comments
for t in material.pov_texture_slots:
idx += 1
# index = material.pov.active_texture_index
- slot = material.pov_texture_slots[idx] # [index]
+ slot = material.pov_texture_slots[idx] # [index]
povtex = slot.name
- tex = bpy.data.textures[povtex]
-
+ tex = bpy.data.textures[povtex]
+
if t and t.use and tex is not None:
-
-
+
+
if (tex.type == 'IMAGE' and tex.image) or tex.type != 'IMAGE':
#validPath
if(t and t.use and
@@ -272,10 +272,10 @@ def writeMaterial(using_uberpov, DEF_MAT_NAME, scene, tabWrite, safety, comments
def exportPattern(texture, string_strip_hyphen):
"""Translate Blender procedural textures to POV patterns and write to pov file.
-
+
Function Patterns can be used to better access sub components of a pattern like
grey values for influence mapping"""
-
+
tex=texture
pat = tex.pov
PATname = "PAT_%s"%string_strip_hyphen(bpy.path.clean_name(tex.name))
@@ -761,7 +761,7 @@ def writeTextureInfluence(mater, materialNames, LocalMaterialNames, path_image,
imageFormat, imgMap, imgMapTransforms, tabWrite, comments,
string_strip_hyphen, safety, col, os, preview_dir, unpacked_images):
"""Translate Blender texture influences to various POV texture tricks and write to pov file."""
-
+
material_finish = materialNames[mater.name]
if mater.pov.use_transparency:
trans = 1.0 - mater.pov.alpha
@@ -790,10 +790,10 @@ def writeTextureInfluence(mater, materialNames, LocalMaterialNames, path_image,
for t in mater.pov_texture_slots:
idx += 1
# index = mater.pov.active_texture_index
- slot = mater.pov_texture_slots[idx] # [index]
+ slot = mater.pov_texture_slots[idx] # [index]
povtex = slot.name
tex = bpy.data.textures[povtex]
-
+
if t and (t.use and (tex is not None)):
# 'NONE' ('NONE' type texture is different from no texture covered above)
if (tex.type == 'NONE' and tex.pov.tex_pattern_type == 'emulator'):
@@ -1185,9 +1185,9 @@ def writeTextureInfluence(mater, materialNames, LocalMaterialNames, path_image,
for t in mater.pov_texture_slots:
idx += 1
# index = mater.pov.active_texture_index
- slot = mater.pov_texture_slots[idx] # [index]
+ slot = mater.pov_texture_slots[idx] # [index]
povtex = slot.name
- tex = bpy.data.textures[povtex]
+ tex = bpy.data.textures[povtex]
if(t and t.use and ((tex.type == 'IMAGE' and tex.image) or tex.type != 'IMAGE') and
(t.use_map_specular or t.use_map_raymir)):
# Specular mapped textures would conflict with colored specular
diff --git a/render_povray/ui.py b/render_povray/ui.py
index 94092121..33d2daa4 100644
--- a/render_povray/ui.py
+++ b/render_povray/ui.py
@@ -192,8 +192,8 @@ for member in dir(properties_material):
subclass = getattr(properties_material, member)
try:
# mat=bpy.context.active_object.active_material
- # if (mat and mat.pov.type == "SURFACE"
- # and not (mat.pov.material_use_nodes or mat.use_nodes)):
+ # if (mat and mat.pov.type == "SURFACE"
+ # and not (mat.pov.material_use_nodes or mat.use_nodes)):
# and (engine in cls.COMPAT_ENGINES)) if subclasses were sorted
subclass.COMPAT_ENGINES.add('POVRAY_RENDER')
except:
@@ -272,7 +272,7 @@ class WORLD_OT_POV_add_preset(AddPresetBase, Operator):
# where to store the preset
preset_subdir = "pov/world"
-
+
def check_material(mat):
if mat is not None:
if mat.use_nodes:
@@ -287,10 +287,10 @@ def simple_material(mat):
if (mat is not None) and (not mat.use_nodes):
return True
return False
-
+
def check_add_mesh_extra_objects():
"""Test if Add mesh extra objects addon is activated
-
+
This addon is currently used to generate the proxy for POV parametric
surface which is almost the same priciple as its Math xyz surface
"""
@@ -300,10 +300,10 @@ def check_add_mesh_extra_objects():
def locate_docpath():
"""POV can be installed with some include files.
-
+
Get their path as defined in user preferences or registry keys for
the user to be able to invoke them."""
-
+
addon_prefs = bpy.context.preferences.addons[__package__].preferences
# Use the system preference if its set.
pov_documents = addon_prefs.docpath_povray
@@ -338,7 +338,7 @@ def locate_docpath():
def pov_context_tex_datablock(context):
"""Texture context type recreated as deprecated in blender 2.8"""
-
+
idblock = context.brush
if idblock and bpy.context.scene.texture_context == 'OTHER':
return idblock
@@ -351,7 +351,7 @@ def pov_context_tex_datablock(context):
idblock = context.world
if idblock:
return idblock
-
+
idblock = context.light
if idblock:
return idblock
@@ -364,11 +364,11 @@ def pov_context_tex_datablock(context):
idblock = context.line_style
if idblock:
return idblock
-
+
class RenderButtonsPanel():
"""Use this class to define buttons from the render tab of
properties window."""
-
+
bl_space_type = 'PROPERTIES'
bl_region_type = 'WINDOW'
bl_context = "render"
@@ -670,7 +670,7 @@ class LIGHT_PT_POV_sunsky(PovLampButtonsPanel, Panel):
class LIGHT_PT_POV_shadow(PovLampButtonsPanel, Panel):
bl_label = "Shadow"
COMPAT_ENGINES = {'POVRAY_RENDER'}
-
+
@classmethod
def poll(cls, context):
lamp = context.lamp
@@ -683,7 +683,7 @@ class LIGHT_PT_POV_shadow(PovLampButtonsPanel, Panel):
lamp = context.lamp
layout.row().prop(lamp, "shadow_method", expand=True)
-
+
split = layout.split()
col = split.column()
@@ -746,7 +746,7 @@ class LIGHT_PT_POV_shadow(PovLampButtonsPanel, Panel):
elif lamp.shape == 'RECTANGLE':
sub.prop(lamp, "shadow_ray_samples_x", text="Samples X")
sub.prop(lamp, "shadow_ray_samples_y", text="Samples Y")
-
+
'''
if lamp.shadow_method == 'NOSHADOW' and lamp.type == 'AREA':
split = layout.split()
@@ -985,7 +985,7 @@ class WORLD_PT_POV_mist(WorldButtonsPanel, Panel):
col.prop(world.mist_settings, "height")
layout.prop(world.mist_settings, "falloff")
-
+
class RENDER_PT_POV_export_settings(RenderButtonsPanel, Panel):
"""Use this class to define pov ini settingss buttons."""
@@ -1058,11 +1058,11 @@ class RENDER_PT_POV_render_settings(RenderButtonsPanel, Panel):
if sys.platform[:3] != "win":
layout.prop(scene.pov, "sdl_window_enable", text="POV-Ray SDL Window")
-
+
col = layout.column()
col.label(text="Main Path Tracing:")
col.prop(scene.pov, "max_trace_level", text="Ray Depth")
- align = True
+ align = True
layout.active = scene.pov.global_settings_advanced
layout.prop(scene.pov,"charset")
row = layout.row(align = align)
@@ -1077,15 +1077,15 @@ class RENDER_PT_POV_render_settings(RenderButtonsPanel, Panel):
row.prop(scene.pov,"number_of_waves")
row = layout.row(align = align)
row.prop(scene.pov,"noise_generator")
-
+
split = layout.split()
split.label(text="Shading:")
split = layout.split()
-
+
row = split.row(align = align)
row.prop(scene.pov, "use_shadows")
- row.prop(scene.pov, "alpha_mode")
-
+ row.prop(scene.pov, "alpha_mode")
+
class RENDER_PT_POV_photons(RenderButtonsPanel, Panel):
"""Use this class to define pov photons buttons."""
@@ -1473,7 +1473,7 @@ class MATERIAL_PT_POV_sss(MaterialButtonsPanel, Panel):
sub.prop(sss, "back")
col.separator()
col.prop(sss, "error_threshold", text="Error")
-
+
class MATERIAL_PT_POV_activate_node(MaterialButtonsPanel, Panel):
"""Use this class to define an activate pov nodes button."""
@@ -1558,7 +1558,7 @@ class MATERIAL_PT_POV_mirror(MaterialButtonsPanel, Panel):
bl_idname = "MATERIAL_PT_POV_raytrace_mirror"
COMPAT_ENGINES = {'POVRAY_RENDER'}
-
+
@classmethod
def poll(cls, context):
mat = context.material
@@ -1677,12 +1677,12 @@ class MATERIAL_PT_POV_transp(MaterialButtonsPanel, Panel):
sub.active = rayt.gloss_factor < 1.0
sub.prop(rayt, "gloss_threshold", text="Threshold")
sub.prop(rayt, "gloss_samples", text="Samples")
-
+
class MATERIAL_PT_POV_reflection(MaterialButtonsPanel, Panel):
"""Use this class to define more pov specific reflectivity buttons."""
bl_label = "POV-Ray Reflection"
- bl_parent_id = "MATERIAL_PT_POV_raytrace_mirror"
+ bl_parent_id = "MATERIAL_PT_POV_raytrace_mirror"
COMPAT_ENGINES = {'POVRAY_RENDER'}
@classmethod
@@ -1718,8 +1718,8 @@ class MATERIAL_PT_POV_reflection(MaterialButtonsPanel, Panel):
#group some native Blender (SSS) and POV (Fade)settings under such a parent panel?
class MATERIAL_PT_POV_interior(MaterialButtonsPanel, Panel):
bl_label = "POV-Ray Interior"
- bl_idname = "material.pov_interior"
- #bl_parent_id = "material.absorption"
+ bl_idname = "material.pov_interior"
+ #bl_parent_id = "material.absorption"
COMPAT_ENGINES = {'POVRAY_RENDER'}
@classmethod
def poll(cls, context):
@@ -1731,14 +1731,14 @@ class MATERIAL_PT_POV_interior(MaterialButtonsPanel, Panel):
def draw_header(self, context):
mat = context.material
-'''
+'''
class MATERIAL_PT_POV_fade_color(MaterialButtonsPanel, Panel):
"""Use this class to define pov fading (absorption) color buttons."""
bl_label = "POV-Ray Absorption"
COMPAT_ENGINES = {'POVRAY_RENDER'}
- #bl_parent_id = "material.pov_interior"
+ #bl_parent_id = "material.pov_interior"
@classmethod
def poll(cls, context):
@@ -1859,7 +1859,7 @@ class MATERIAL_PT_strand(MaterialButtonsPanel, Panel):
sub.label(text="Surface diffuse:")
sub = col.column()
sub.prop(tan, "blend_distance", text="Distance")
-
+
class MATERIAL_PT_POV_replacement_text(MaterialButtonsPanel, Panel):
"""Use this class to define pov custom code declared name field."""
@@ -1920,8 +1920,8 @@ class MATERIAL_TEXTURE_SLOTS_UL_List(UIList):
material = context.material#.pov
active_data = material
#tex = context.texture #may be needed later?
-
-
+
+
# We could write some code to decide which icon to use here...
custom_icon = 'TEXTURE'
@@ -1932,7 +1932,7 @@ class MATERIAL_TEXTURE_SLOTS_UL_List(UIList):
elif self.layout_type in {'GRID'}:
layout.alignment = 'CENTER'
layout.label("", icon = custom_icon)
-'''
+'''
class WORLD_TEXTURE_SLOTS_UL_List(UIList):
"""Use this class to show pov texture slots list.""" # XXX Not used yet
@@ -1943,8 +1943,8 @@ class WORLD_TEXTURE_SLOTS_UL_List(UIList):
world = context.world#.pov
active_data = world.pov
#tex = context.texture #may be needed later?
-
-
+
+
# We could write some code to decide which icon to use here...
custom_icon = 'TEXTURE'
@@ -1955,7 +1955,7 @@ class WORLD_TEXTURE_SLOTS_UL_List(UIList):
elif self.layout_type in {'GRID'}:
layout.alignment = 'CENTER'
layout.label("", icon = custom_icon)
-
+
class MATERIAL_TEXTURE_SLOTS_UL_POV_layerlist(bpy.types.UIList):
"""Use this class to show pov texture slots list."""
@@ -1980,7 +1980,7 @@ class MATERIAL_TEXTURE_SLOTS_UL_POV_layerlist(bpy.types.UIList):
elif self.layout_type in {'GRID'}:
layout.alignment = 'CENTER'
layout.label(text="", icon_value=icon)
-
+
class TEXTURE_PT_POV_context_texture(TextureButtonsPanel, Panel):
"""Use this class to show pov texture context buttons."""
@@ -1991,7 +1991,7 @@ class TEXTURE_PT_POV_context_texture(TextureButtonsPanel, Panel):
@classmethod
def poll(cls, context):
engine = context.scene.render.engine
- return (engine in cls.COMPAT_ENGINES)
+ return (engine in cls.COMPAT_ENGINES)
# if not (hasattr(context, "texture_slot") or hasattr(context, "texture_node")):
# return False
return ((context.material or
@@ -1999,14 +1999,14 @@ class TEXTURE_PT_POV_context_texture(TextureButtonsPanel, Panel):
context.light or
context.texture or
context.line_style or
- context.particle_system or
+ context.particle_system or
isinstance(context.space_data.pin_id, ParticleSettings) or
context.texture_user) and
(engine in cls.COMPAT_ENGINES))
def draw(self, context):
layout = self.layout
-
+
scene = context.scene
layout.prop(scene, "texture_context", expand=True)
if scene.texture_context == 'MATERIAL':
@@ -2017,7 +2017,7 @@ class TEXTURE_PT_POV_context_texture(TextureButtonsPanel, Panel):
col.operator("pov.textureslotadd",icon='ADD',text='')
col.operator("pov.textureslotremove",icon='REMOVE',text='')
col.separator()
-
+
if mat.pov_texture_slots:
index = mat.pov.active_texture_index
slot = mat.pov_texture_slots[index]
@@ -2028,37 +2028,37 @@ class TEXTURE_PT_POV_context_texture(TextureButtonsPanel, Panel):
layout.prop_search(slot,'texture_search',bpy.data,'textures',text='')
# else:
# for i in range(18): # length of material texture slots
- # mat.pov_texture_slots.add()
+ # mat.pov_texture_slots.add()
-# Commented out below is a reminder of what existed in Blender Internal
+# Commented out below is a reminder of what existed in Blender Internal
# attributes need to be recreated
'''
slot = getattr(context, "texture_slot", None)
node = getattr(context, "texture_node", None)
space = context.space_data
-
- #attempt at replacing removed space_data
+
+ #attempt at replacing removed space_data
mtl = getattr(context, "material", None)
if mtl != None:
- spacedependant = mtl
+ spacedependant = mtl
wld = getattr(context, "world", None)
if wld != None:
- spacedependant = wld
+ spacedependant = wld
lgt = getattr(context, "light", None)
if lgt != None:
- spacedependant = lgt
+ spacedependant = lgt
#idblock = context.particle_system.settings
-
+
tex = getattr(context, "texture", None)
if tex != None:
- spacedependant = tex
+ spacedependant = tex
+
-
scene = context.scene
- idblock = scene.pov#pov_context_tex_datablock(context)
+ idblock = scene.pov#pov_context_tex_datablock(context)
pin_id = space.pin_id
#spacedependant.use_limited_texture_context = True
@@ -2100,7 +2100,7 @@ class TEXTURE_PT_POV_context_texture(TextureButtonsPanel, Panel):
tex_collection = (pin_id is None) and (node is None) and (spacedependant.texture_context not in ('LINESTYLE','OTHER'))
if tex_collection:
-
+
pov = getattr(context, "pov", None)
active_texture_index = getattr(spacedependant, "active_texture_index", None)
print (pov)
@@ -2110,10 +2110,10 @@ class TEXTURE_PT_POV_context_texture(TextureButtonsPanel, Panel):
row.template_list("TEXTURE_UL_texslots", "", idblock, "texture_slots",
idblock, "active_texture_index", rows=2, maxrows=16, type="DEFAULT")
-
+
# row.template_list("WORLD_TEXTURE_SLOTS_UL_List", "texture_slots", world,
# world.texture_slots, world, "active_texture_index", rows=2)
-
+
col = row.column(align=True)
col.operator("texture.slot_move", text="", icon='TRIA_UP').type = 'UP'
col.operator("texture.slot_move", text="", icon='TRIA_DOWN').type = 'DOWN'
@@ -2214,7 +2214,7 @@ class MATERIAL_OT_POV_texture_slot_remove(Operator):
return {'FINISHED'}
class TextureSlotPanel(TextureButtonsPanel):
- """Use this class to show pov texture slots panel."""
+ """Use this class to show pov texture slots panel."""
COMPAT_ENGINES = {'POVRAY_RENDER'}
@@ -2245,8 +2245,8 @@ class TEXTURE_PT_POV_type(TextureButtonsPanel, Panel):
# row = layout.row()
# row.template_list("WORLD_TEXTURE_SLOTS_UL_List", "texture_slots", world,
# world.texture_slots, world, "active_texture_index")
-
-
+
+
class TEXTURE_PT_POV_preview(TextureButtonsPanel, Panel):
"""Use this class to define pov texture preview panel."""
@@ -2527,7 +2527,7 @@ class TEXTURE_PT_POV_influence(TextureSlotPanel, Panel):
if isinstance(idblock, Material):
split = layout.split()
- col = split.column()
+ col = split.column()
if idblock.pov.type in {'SURFACE', 'WIRE'}:
split = layout.split()
@@ -3242,11 +3242,11 @@ class CAMERA_PT_POV_cam_dof(CameraDataButtonsPanel, Panel):
col = flow.column()
col.label(text="F-Stop value will export as")
col.label(text="POV aperture : " + "%.3f" % (1/cam.dof.aperture_fstop*1000))
-
+
col = flow.column()
col.prop(cam.pov, "dof_samples_min")
col.prop(cam.pov, "dof_samples_max")
- col.prop(cam.pov, "dof_variance")
+ col.prop(cam.pov, "dof_variance")
col.prop(cam.pov, "dof_confidence")
@@ -3296,7 +3296,7 @@ class CAMERA_PT_POV_replacement_text(CameraDataButtonsPanel, Panel):
class TEXT_OT_POV_insert(Operator):
"""Use this class to create blender text editor operator to insert pov snippets like other pov IDEs."""
-
+
bl_idname = "text.povray_insert"
bl_label = "Insert"
@@ -3416,7 +3416,7 @@ classes = (
WORLD_MT_POV_presets,
WORLD_OT_POV_add_preset,
WORLD_TEXTURE_SLOTS_UL_List,
- WORLD_PT_POV_mist,
+ WORLD_PT_POV_mist,
#RenderButtonsPanel,
#ModifierButtonsPanel,
#MaterialButtonsPanel,
@@ -3462,7 +3462,7 @@ classes = (
MATERIAL_PT_POV_caustics,
MATERIAL_PT_POV_replacement_text,
TEXTURE_MT_POV_specials,
- TEXTURE_PT_POV_context_texture,
+ TEXTURE_PT_POV_context_texture,
TEXTURE_PT_POV_type,
TEXTURE_PT_POV_preview,
TEXTURE_PT_POV_parameters,
@@ -3490,7 +3490,7 @@ classes = (
# TEXTURE_PT_context,
#TEXTURE_PT_POV_povray_texture_slots,
TEXTURE_UL_POV_texture_slots,
- MATERIAL_TEXTURE_SLOTS_UL_POV_layerlist,
+ MATERIAL_TEXTURE_SLOTS_UL_POV_layerlist,
MATERIAL_OT_POV_texture_slot_add,
MATERIAL_OT_POV_texture_slot_remove,
TEXTURE_PT_POV_influence
diff --git a/render_povray/update_files.py b/render_povray/update_files.py
index e0d4495d..8b89c1f2 100644
--- a/render_povray/update_files.py
+++ b/render_povray/update_files.py
@@ -17,7 +17,7 @@
# ##### END GPL LICENSE BLOCK #####
# <pep8 compliant>
-"""update new variables to values from older API.
+"""update new variables to values from older API.
It does not have a UI and used to be found with F3 search field.
This file needs an update."""