Material Properties: Generalized Anisotropic Function Example#
Download the ExampleModel.slmd for this example.
Code Snippet: Generalized Anisotropic Function#
from Slide2Scripting.Slide2Modeler import Slide2Modeler
from Slide2Scripting.MaterialProperties.MaterialStrength import StrengthType
from Slide2Scripting.MaterialProperties.UserDefinedFunctions import (
AngleOrSurfaceGeneralizedAnisotropicPoint,
AngleRangeGeneralizedAnisotropicPoint,
GeneralizedAnisotropicAngleSurfaceDefinitionType,
GeneralizedAnisotropicAngleSurfaceMappingType,
)
import os, inspect
current_dir = os.path.dirname(os.path.abspath(inspect.getfile(lambda: None)))
Slide2Modeler.startApplication(60074)
slide2_modeler = Slide2Modeler(60074)
model = slide2_modeler.openFile(rf"{current_dir}\example_models\ExampleModel.slmd")
udf = model.getUserDefinedFunctions()
idx = udf.GeneralizedAnisotropic.addAngleRangeFunction(
"Example GA Angle Range",
[
AngleRangeGeneralizedAnisotropicPoint(-80.0, 1),
AngleRangeGeneralizedAnisotropicPoint(0.0, 2),
AngleRangeGeneralizedAnisotropicPoint(90.0, 3),
],
)
udf.GeneralizedAnisotropic.addAngleOrSurfaceFunction(
"Example GA Angle/Surface",
1,
GeneralizedAnisotropicAngleSurfaceDefinitionType.ANGLE,
GeneralizedAnisotropicAngleSurfaceMappingType.A_B,
[
AngleOrSurfaceGeneralizedAnisotropicPoint(0.0, 0, 10.0, 20.0, 2),
AngleOrSurfaceGeneralizedAnisotropicPoint(45.0, 0, 15.0, 25.0, 3),
],
)
material = model.getMaterialProperties()[0]
material.StrengthProperties.setStrengthType(StrengthType.GENERALIZED_ANISOTROPIC_FUNCTION)
props = material.StrengthProperties.GeneralizedAnisotropicStrength
props.setSelectedAngleRangeFunctionIndex(idx)
print(props.getSelectedAngleRangeFunctionIndex())
model.save()
model.close()
slide2_modeler.closeApplication()
Output#
0