Added ARM object creation and ARM property assignment capability for
all types of properties, including collections.
ARM collections now support append(), extend() and clear()
AIM aggregates now support append(), extend(), insert(), pop(), and
clear()
Changes in release 20.4 (2023-06-28)
Added AIM attribute assignment capability for all types of objects,
including aggregate concatenation and item removal.
Better handling of EXPRESS LOGICAL values. Now uses standard Python
true/false where appropriate, and the step.Logical.UNKNOWN enum when
needed.
Changes in release 20.3 (2023-06-05)
Rationalized some API calls that were in unexpected places for
historical reasons. The open/new/save_project() functions are now
on the module rather than the high-level API classes, so it is now
just step.open_project("filename"). Also moved schema_name/type()
from the module to Design.
Added FinderAPI set_api_units() to control unit conversion of
returned values.
Changes in release 20.2 (2023-05-25)
Added support for many get_tool_* functions in FinderAPI.
Changes in release 20.1 (2023-05-15)
Fixed crash when using ToleranceAPI introduced in last version by
change to lower level C++ code initialization.
Added Design.find() function for names/entity ids and path()
function for the file path.
Changes in release 20.0 (2023-05-11)
Generate can now accept python callback functions for building
custom code generation and overriding the existing callbacks. The
built in callbacks are all available as Generate.builtin_* static
methods.
Renamed MakerApt to AptAPI and MakerTolerance to ToleranceAPI to
better indicate their purpose as collections of related functions
rather than as instances that should be created.
Expanded AptAPI and ToleranceAPI to cover all functions used for
both additive manufacturing and fishhead process examples.
Updated ARM objects for the latest Countersunk/Counterbore hole
feature definitions.
Aggregate indexing now supports slices.
Added vector and transform functions for geometric applications.
Updated documentation for all API functions.
Renamed step.RoseUnit to just step.Unit
Now distributing on PyPI with wheels for Windows, Linux, and Mac
compatible with Python 3.7+.
Changes in release 19.11 (2022-08-23)
Changed arguments for plan_additive_layer so that workplan and shape
are now the first two only required parameters, index and name have
been moved to three and four and now have default values of -1 (end
of plan) and "" empty string.
Annotated all existing functions with .pyi type stub information for
IDE type checking and tooltips.
Removed extra "step." prefix from enum type names.
Updated functions in MakerApt to accept PathLike or string where
filenames are required.
Changes in release 19.10 (2022-08-08)
Clarified additive path parameter names
Changes in release 19.9 (2022-08-05)
Added put_workpiece_placement() and workplan_setup functions to Apt.
Improved pre and post contour toolpath generation for consistent
starting points across multiple runs.
Changes in release 19.8 (2022-08-04)
Updated to use Python 3.10
Step.Objects now respond to both ARM and AIM properties. If names
overlap, the ARM property is used. Specific ARM or AIM views can be
forced with the .arm() or .aim() selector.
Added MakerApt and MakerTolerance classes which parallel the
AptStepMaker and Tolerance .NET DLL classes. All of the methods are
class methods, so there is no need to create an instance of these.
Some functions are present, and more will be added going forward.
Changes in release 0.7 (2022-03-08)
Fixed parameter passing problem with Generate.format_other()
Changes in release 0.6 (2022-03-05)
Fixed crash when formatting negative small number that rounds to
zero when requiring a minimum number of digits.
Added Generate move_is_modal flag to control whether G0/G1 command
is treated as modal or must be issued with every move even when a
group of moves are of the same type.
Changes in release 0.5 (2022-01-03)
Added RoseUnit.INCH alias for RoseUnit.IN
Made arm_type() and arm() find take either an ARM or AIM object.
Changes in release 0.4 (2021-12-31)
Adding STEP-NC traversal and code generation classes. These mirror
the classes in the STEP-NC dll but API functions use the usual PEP8
lower_with_underscore conventions instead of CamelCase.
Adaptive
Generate
GenerateState
The Adaptive class is completely implemented, Generate has enough of
the API implemented for most uses, and GenerateState currently only
has a few access functions.
Changes in release 0.3 (2021-12-06)
ARM properties changed from python methods (armobj.foo() function
call parens) to attributes (armobj.foo, no parens). Now accepts
subscript notation (armobj['foo']) and can get a dictionary of all
values by calling dict(armobj)
ARM property read access for workpiece PDM information:
Approval
Approval_date_time
Approval_status
Approving_person_organization
Assigned_date
Assigned_organization
Assigned_person
Assigned_time
Hardness
Material
Person_and_address
Security_classification
Security_classification_assignment
Workpiece
Workpiece_assembly_component
Workpiece_setup
ARM property read access for workpiece kinematics information:
Flexible_machine_node
Machine_kinematics
Machine_pair
Machine_with_kinematics
Rigid_machine_node
ARM property read access for workpiece feature information:
Angle_taper
Catalogue_thread
Chamfer
Circular_boss
Circular_closed_profile
Circular_closed_shape_profile
Circular_pattern
Closed_pocket
Complex_boss
Compound_feature
Conical_hole_bottom
Counterbore_hole
Counterbore_hole_template
Countersunk_hole
Countersunk_hole_template
Defined_marking
Defined_thread
Diagonal_knurl
Diameter_taper
Diamond_knurl
Edge_round
Feature_template
Flat_hole_bottom
Flat_slot_end_type
Flat_with_radius_hole_bottom
General_closed_profile
General_feature
General_outside_profile
General_pattern
General_pocket_bottom_condition
General_profile
General_profile_floor
General_revolution
General_shape_profile
Groove
Linear_path
Linear_profile
Loop_slot_end_type
Ngon_profile
Open_pocket
Open_slot_end_type
Outer_diameter
Outer_diameter_to_shoulder
Partial_area_definition
Partial_circular_profile
Partial_circular_shape_profile
Placed_feature
Planar_face
Planar_pocket_bottom_condition
Planar_profile_floor
Radiused_pocket_bottom_condition
Radiused_slot_end_type
Rectangular_boss
Rectangular_closed_profile
Rectangular_closed_shape_profile
Rectangular_offset
Rectangular_open_shape_profile
Rectangular_pattern
Region
Revolved_flat
Round_hole
Round_hole_template
Rounded_end
Rounded_u_profile
Scra_feature_face
Slot
Spherical_cap
Spherical_hole_bottom
Square_u_profile
Step
Straight_knurl
Tee_profile
Through_bottom_condition
Through_pocket_bottom_condition
Through_profile_floor
Tool_knurl
Toolpath_feature
Vee_profile
Woodruff_slot_end_type
Arm property read access for process information:
Along_path
Ap_retract_angle
Ap_retract_tangent
Assignment
Bidirectional
Bidirectional_contour
Bidirectional_turning
Boring
Bottom_and_side_finish_milling
Bottom_and_side_rough_milling
Center_milling
Channel
Connect_direct
Const_cutting_speed
Const_spindle_speed
Contour_bidirectional
Contour_parallel
Contour_spiral
Contour_turning
Contouring_finish
Contouring_rough
Cutter_contact_trajectory
Cutter_location_trajectory
Cutting_in
Display_message
Drilling
Drilling_type_strategy
Explicit_strategy
Explicit_turning_strategy
Extended_nc_function
Facing_finish
Facing_rough
Fixture_usage
Freeform_finish_milling
Freeform_operation
Freeform_rough_milling
Grooving_finish
Grooving_rough
Grooving_strategy
If_statement
Index_table
Int_constant
Int_variable
Knurling
Load_tool
Machine_parameters
Machine_usage
Machining_workingstep
Milling_machine_functions
Milling_technology
Multistep_drilling
Multistep_grooving_strategy
Non_sequential
Offset_vector
Optional_stop
Parallel
Plane_finish_milling
Plane_rough_milling
Plunge_helix
Plunge_ramp
Plunge_toolaxis
Plunge_zigzag
Program_stop
Project
Real_constant
Real_variable
Reaming
Return_home
Selective
Setup
Setup_instruction
Side_finish_milling
Side_rough_milling
Thread_strategy
Threading_finish
Threading_rough
Turning_machine_functions
Turning_technology
Turning_workingstep
Unidirectional
Unidirectional_turning
Unload_tool
While_statement
Workpiece_complete_probing
Workpiece_probing
Workplan
Tapping
Tool_usage
Arm property read access for tool information:
Ballnose_endmill
Bullnose_endmill
Combined_drill_and_reamer
Combined_drill_and_tap
Counterbore
Countersink
Cutting_component
Dovetail_mill
Endmill
Facemill
General_turning_tool
Grooving_tool
Knurling_tool
Profiled_end_mill
Reaming_cutting_tool
Rotating_boring_cutting_tool
Shouldermill
Side_mill
Spade_drill
Spotdrill
Step_drill
T_slot_mill
Tapered_drill
Tapered_reamer
Tapping_cutting_tool
Thread_mill
Touch_probe
Twist_drill
User_defined_milling_tool
User_defined_turning_tool
Arm property read access for presentation information:
Constructive_model
Draughting_callout_item
Single_styled_item
Styled_draughting_model
Styled_geometric_model
Styled_shaded_model
ARM property read access for all kinds of callout:
Apex_callout
Callout
Center_of_symmetry_callout
Composite_callout
Composite_group_callout
Derived_callout
Geometric_alignment_callout
Parallel_offset_callout
Perpendicular_to_callout
Spatial_extension_callout
Tangential_to_callout
ARM property read access for all general properties:
Cam_property
Part_property
Process_property
Property
Surface_property
Surface_texture_parameter
Treatment_result
ARM property read access for all dimensions:
Angular_location_dimension
Angular_size_dimension
Curved_distance_dimension
Curved_size_dimension
Diameter_size_dimension
Directed_angular_location_dimension
Directed_curved_distance_dimension
Directed_linear_distance_dimension
Geometric_context
Height_size_dimensionrm
Length_size_dimension
Linear_distance_dimension
Qualified_plus_minus_value
Radial_size_dimension
Thickness_size_dimension
Width_size_dimension
Changes in release 0.2 (2021-11-29)
General recognize API for ARM objects implemented
Read access for all ARM properties implemented for workpiece,
tolerances and datums: