0.1.8
Loading...
Searching...
No Matches
pyhelios.PlantArchitecture Namespace Reference

Classes

class  PlantArchitecture
 High-level interface for plant architecture modeling and procedural plant generation. More...
 
class  PlantArchitectureError
 Raised when PlantArchitecture operations fail. More...
 

Functions

 validate_vec3 (value, name, func)
 
 validate_vec2 (value, name, func)
 
 validate_int2 (value, name, func)
 
str _resolve_user_path (Union[str, Path] filepath)
 Convert relative paths to absolute paths before changing working directory.
 
 _plantarchitecture_working_directory ()
 Context manager that temporarily changes working directory to where PlantArchitecture assets are located.
 
 is_plantarchitecture_available ()
 Check if PlantArchitecture plugin is available for use.
 
PlantArchitecture create_plant_architecture (Context context)
 Create PlantArchitecture instance with context.
 

Variables

 logger = logging.getLogger(__name__)
 

Function Documentation

◆ _plantarchitecture_working_directory()

pyhelios.PlantArchitecture._plantarchitecture_working_directory ( )
protected

Context manager that temporarily changes working directory to where PlantArchitecture assets are located.

PlantArchitecture C++ code uses hardcoded relative paths like "plugins/plantarchitecture/assets/textures/" expecting assets relative to working directory. This manager temporarily changes to the build directory where assets are actually located.

Exceptions
RuntimeErrorIf build directory or PlantArchitecture assets are not found, indicating a build system error.

Definition at line 85 of file PlantArchitecture.py.

◆ _resolve_user_path()

str pyhelios.PlantArchitecture._resolve_user_path ( Union[str, Path] filepath)
protected

Convert relative paths to absolute paths before changing working directory.

This preserves the user's intended file location when the working directory is temporarily changed for C++ asset access. Absolute paths are returned unchanged.

Parameters
filepathFile path to resolve (string or Path object)
Returns
Absolute path as string

Definition at line 65 of file PlantArchitecture.py.

◆ create_plant_architecture()

PlantArchitecture pyhelios.PlantArchitecture.create_plant_architecture ( Context context)

Create PlantArchitecture instance with context.

Parameters
contextHelios Context
Returns
PlantArchitecture instance

Examples

>>> context = Context()
>>> plantarch = create_plant_architecture(context)

Definition at line 1409 of file PlantArchitecture.py.

◆ is_plantarchitecture_available()

pyhelios.PlantArchitecture.is_plantarchitecture_available ( )

Check if PlantArchitecture plugin is available for use.

Returns
bool True if PlantArchitecture can be used, False otherwise

Definition at line 153 of file PlantArchitecture.py.

◆ validate_int2()

pyhelios.PlantArchitecture.validate_int2 ( value,
name,
func )

Definition at line 38 of file PlantArchitecture.py.

◆ validate_vec2()

pyhelios.PlantArchitecture.validate_vec2 ( value,
name,
func )

Definition at line 30 of file PlantArchitecture.py.

◆ validate_vec3()

pyhelios.PlantArchitecture.validate_vec3 ( value,
name,
func )

Definition at line 22 of file PlantArchitecture.py.

Variable Documentation

◆ logger

pyhelios.PlantArchitecture.logger = logging.getLogger(__name__)

Definition at line 48 of file PlantArchitecture.py.