composition_configs package
Submodules
composition_configs.core_config module
- class composition_configs.core_config.WorkFileConfig(root_file: str, write_to_memory: bool = False, keep_files: bool = False)[source]
Bases:
objectConfiguration object for work file management behavior.
- Parameters:
root_file (str) – The core file name used to generate unique file names.
write_to_memory (bool) – If True, files are written to memory, if False, written to disk.
keep_files (bool) – If True, work files are kept after execution; if False, they are deleted when done.
- root_file: str
- write_to_memory: bool = False
- keep_files: bool = False
- class composition_configs.core_config.InputType(*values)[source]
Bases:
Enum- PROCESSING = 'processing'
- CONTEXT = 'context'
- class composition_configs.core_config.InputEntry(object: str, input_type: composition_configs.core_config.InputType, data_type: composition_configs.core_config.DataType, tag: Literal['input'], path: str)[source]
Bases:
object- object: str
- tag: Literal['input']
- path: str
Represents a single input feature used in partitioned processing.
Users should prefer the factory methods processing_input() or context_input() over manual initialization to ensure correct and future-proof configuration.
- object
Unique identifier used across the partitioning logic.
- input_type
Indicates whether the input is for processing or context.
- data_type
Describes the data format (e.g., vector).
- tag
Should always be ‘input’ for now. Set automatically by factory methods.
- path
Path to the input dataset.
- classmethod processing_input(object: str, path: str) InputEntry[source]
Create a processing input (vector) entry with default tag.
- classmethod context_input(object: str, path: str) InputEntry[source]
Create a context input (vector) entry with default tag.
- class composition_configs.core_config.OutputEntry(object: str, data_type: composition_configs.core_config.DataType, tag: str, path: str)[source]
Bases:
object- object: str
- tag: str
- path: str
Represents a single output feature to be produced in partitioned processing.
Users should prefer the factory method vector_output() for correct setup, and to allow future support for other data types (e.g., raster).
- object
Unique identifier used across the partitioning logic.
- data_type
Describes the data format (e.g., vector).
- tag
Identifier for the output version (e.g., ‘after_rbc’).
- path
Path where the output dataset will be written.
- classmethod vector_output(object: str, tag: str, path: str) OutputEntry[source]
Create a vector output entry.
- class composition_configs.core_config.InjectIO(object: str, tag: str)[source]
Bases:
object- object: str
- tag: str
- class composition_configs.core_config.ResolvedInputEntry(object: str, tag: str, path: str, input_type: str, data_type: str)[source]
Bases:
object- object: str
- tag: str
- path: str
- input_type: str
- data_type: str
- class composition_configs.core_config.ResolvedOutputEntry(object: str, tag: str, path: str, data_type: str)[source]
Bases:
object- object: str
- tag: str
- path: str
- data_type: str
- class composition_configs.core_config.PartitionInputConfig(entries: List[composition_configs.core_config.InputEntry])[source]
Bases:
object- entries: List[InputEntry]
- class composition_configs.core_config.PartitionOutputConfig(entries: List[composition_configs.core_config.OutputEntry])[source]
Bases:
object- entries: List[OutputEntry]
- class composition_configs.core_config.PartitionIOConfig(input_config: composition_configs.core_config.PartitionInputConfig, output_config: composition_configs.core_config.PartitionOutputConfig, documentation_directory: composition_configs.type_defs.SubdirectoryPath)[source]
Bases:
object- input_config: PartitionInputConfig
- output_config: PartitionOutputConfig
- documentation_directory: SubdirectoryPath
- class composition_configs.core_config.PartitionMethod(*values)[source]
Bases:
Enum- FEATURES = 'FEATURES'
- VERTICES = 'VERTICES'
- class composition_configs.core_config.FuncMethodEntryConfig(func: Callable[..., Any], params: Any | Sequence[Any] | None = None)[source]
Bases:
object- func: Callable[[...], Any]
- params: Any | Sequence[Any] | None = None
- class composition_configs.core_config.ClassMethodEntryConfig(class_: type, method: Callable[..., Any], init_params: Any | Sequence[Any] | None = None, method_params: Any | Sequence[Any] | None = None)[source]
Bases:
object- class_: type
- method: Callable[[...], Any]
- init_params: Any | Sequence[Any] | None = None
- method_params: Any | Sequence[Any] | None = None
- class composition_configs.core_config.MethodEntriesConfig(entries: list[composition_configs.core_config.FuncMethodEntryConfig | composition_configs.core_config.ClassMethodEntryConfig])[source]
Bases:
object- entries: list[FuncMethodEntryConfig | ClassMethodEntryConfig]
- class composition_configs.core_config.PartitionRunConfig(max_elements_per_partition: int, context_radius_meters: int, run_partition_optimization: bool = True, partition_method: composition_configs.core_config.PartitionMethod = <PartitionMethod.FEATURES: 'FEATURES'>, object_id_column: str = 'OBJECTID')[source]
Bases:
object- max_elements_per_partition: int
- context_radius_meters: int
- run_partition_optimization: bool = True
- partition_method: PartitionMethod = 'FEATURES'
- object_id_column: str = 'OBJECTID'
composition_configs.io_types module
composition_configs.logic_config module
- class composition_configs.logic_config.SymbologyLayerSpec(unique_name: str, input_feature: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, input_lyrx: str, grouped_lyrx: bool, target_layer_name: str | None = None)[source]
Bases:
object- unique_name: str
- input_feature: GdbFilePath | InjectIO
- input_lyrx: str
- grouped_lyrx: bool
- target_layer_name: str | None = None
- class composition_configs.logic_config.BarrierRule(name: str, gap_meters: int, use_turn_orientation: bool = False)[source]
Bases:
object- name: str
- gap_meters: int
- use_turn_orientation: bool = False
- class composition_configs.logic_config.BarrierDefault(gap_meters: int, use_turn_orientation: bool = False)[source]
Bases:
object- gap_meters: int
- use_turn_orientation: bool
- class composition_configs.logic_config.BarrierOverride(gap_meters: int | None = None, use_turn_orientation: bool | None = None)[source]
Bases:
object- gap_meters: int | None
- use_turn_orientation: bool | None
- class composition_configs.logic_config.RbcPolygonInitKwargs(input_data_structure: list[composition_configs.logic_config.SymbologyLayerSpec], output_building_polygons: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, output_collapsed_polygon_points: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, work_file_manager_config: composition_configs.core_config.WorkFileConfig, building_unique_name: str, barrier_default: composition_configs.logic_config.BarrierDefault, barrier_overrides: List[composition_configs.logic_config.BarrierRule] | None = None)[source]
Bases:
object- input_data_structure: list[SymbologyLayerSpec]
- output_building_polygons: GdbFilePath | InjectIO
- output_collapsed_polygon_points: GdbFilePath | InjectIO
- work_file_manager_config: WorkFileConfig
- building_unique_name: str
- barrier_default: BarrierDefault
- barrier_overrides: List[BarrierRule] | None = None
- class composition_configs.logic_config.RbcPointsInitKwargs(input_data_structure: List[composition_configs.logic_config.SymbologyLayerSpec], building_points_unique_name: str, building_polygons_unique_name: str, building_gap_distance_m: int, output_points_after_rbc: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, output_polygons_after_rbc: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, work_file_manager_config: composition_configs.core_config.WorkFileConfig, building_symbol_dimension: dict[int, tuple], barrier_default: composition_configs.logic_config.BarrierDefault, barrier_overrides: List[composition_configs.logic_config.BarrierRule] | None = None, map_scale: str = '100000')[source]
Bases:
object- input_data_structure: List[SymbologyLayerSpec]
- building_points_unique_name: str
- building_polygons_unique_name: str
- building_gap_distance_m: int
- output_points_after_rbc: GdbFilePath | InjectIO
- output_polygons_after_rbc: GdbFilePath | InjectIO
- work_file_manager_config: WorkFileConfig
- building_symbol_dimension: dict[int, tuple]
- barrier_default: BarrierDefault
- barrier_overrides: List[BarrierRule] | None = None
- map_scale: str = '100000'
- class composition_configs.logic_config.BegrensningskurveLandWaterKwargs(input_begrensningskurve: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, input_land_cover_features: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, output_begrensningskurve: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, water_feature_buffer_width: int, water_barrier_buffer_width: int, work_file_manager_config: composition_configs.core_config.WorkFileConfig)[source]
Bases:
object- input_begrensningskurve: GdbFilePath | InjectIO
- input_land_cover_features: GdbFilePath | InjectIO
- output_begrensningskurve: GdbFilePath | InjectIO
- water_feature_buffer_width: int
- water_barrier_buffer_width: int
- work_file_manager_config: WorkFileConfig
- class composition_configs.logic_config.LineToBufferSymbologyKwargs(input_line: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, output_line: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, sql_selection_query: dict, work_file_manager_config: composition_configs.core_config.WorkFileConfig, buffer_distance_factor: int | float = 1, buffer_distance_addition: int | float = 0)[source]
Bases:
object- input_line: GdbFilePath | InjectIO
- output_line: GdbFilePath | InjectIO
- sql_selection_query: dict
- work_file_manager_config: WorkFileConfig
- buffer_distance_factor: int | float = 1
- buffer_distance_addition: int | float = 0
- class composition_configs.logic_config.BufferDisplacementKwargs(input_road_line: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, input_building_points: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, input_line_barriers: Dict[str, Any], output_building_points: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, sql_selection_query: dict, building_symbol_dimension: Dict[int, Tuple[int, int]], displacement_distance_m: int, work_file_manager_config: composition_configs.core_config.WorkFileConfig)[source]
Bases:
object- input_road_line: GdbFilePath | InjectIO
- input_building_points: GdbFilePath | InjectIO
- input_line_barriers: Dict[str, Any]
- output_building_points: GdbFilePath | InjectIO
- sql_selection_query: dict
- building_symbol_dimension: Dict[int, Tuple[int, int]]
- displacement_distance_m: int
- work_file_manager_config: WorkFileConfig
- class composition_configs.logic_config.ThinRoadNetworkKwargs(input_road_line: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, output_road_line: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, work_file_manager_config: composition_configs.core_config.WorkFileConfig, minimum_length: int, invisibility_field_name: str, hierarchy_field_name: str, special_selection_sql: str | None = None)[source]
Bases:
object- input_road_line: GdbFilePath | InjectIO
- output_road_line: GdbFilePath | InjectIO
- work_file_manager_config: WorkFileConfig
- minimum_length: int
- invisibility_field_name: str
- hierarchy_field_name: str
- special_selection_sql: str | None = None
- class composition_configs.logic_config.RemoveRoadTrianglesKwargs(input_line_feature: str, work_file_manager_config: composition_configs.core_config.WorkFileConfig, maximum_length: int, root_file: str, output_processed_feature: str, hierarchy_field: str = None, write_to_memory: bool = False, keep_work_files: bool = False)[source]
Bases:
object- input_line_feature: str
- work_file_manager_config: WorkFileConfig
- maximum_length: int
- root_file: str
- output_processed_feature: str
- hierarchy_field: str = None
- write_to_memory: bool = False
- keep_work_files: bool = False
- class composition_configs.logic_config.CollapseRoadDetailsKwargs(input_road_line: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, output_road_line: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, merge_distnace_m: int, collapse_field_name: str | None = None)[source]
Bases:
object- input_road_line: GdbFilePath | InjectIO
- output_road_line: GdbFilePath | InjectIO
- merge_distnace_m: int
- collapse_field_name: str | None = None
- class composition_configs.logic_config.RrcInitKwargs(input_data_structure: List[composition_configs.logic_config.SymbologyLayerSpec], work_file_manager_config: composition_configs.core_config.WorkFileConfig, primary_road_unique_name: str, output_road_feature: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, output_displacement_feature: composition_configs.type_defs.GdbFilePath | composition_configs.core_config.InjectIO, map_scale: str = '100000', hierarchy_field: str = 'hierarchy')[source]
Bases:
object- input_data_structure: List[SymbologyLayerSpec]
- work_file_manager_config: WorkFileConfig
- primary_road_unique_name: str
- output_road_feature: GdbFilePath | InjectIO
- output_displacement_feature: GdbFilePath | InjectIO
- map_scale: str = '100000'
- hierarchy_field: str = 'hierarchy'
- class composition_configs.logic_config.DissolveInitKwargs(input_line_feature: GdbFilePath | InjectIO, output_processed_feature: GdbFilePath | InjectIO, work_file_manager_config: WorkFileConfig, dissolve_fields: List[str] | None = None, sql_expressions: List[str] | None = None)[source]
Bases:
objectConfiguration for DissolveWithIntersections.
input_line_feature: path or InjectIO to the input line feature output_processed_feature: path or InjectIO for the final merged intersections (or single) work_file_manager_config: WorkFileManager behavior (root_file, in-memory, keep_files) dissolve_fields: optional list of fields to dissolve on; if None -> dissolve all (single-part) sql_expressions: optional list of SQL where-clauses to split/segment, each produces its own FTL result
- input_line_feature: GdbFilePath | InjectIO
- output_processed_feature: GdbFilePath | InjectIO
- work_file_manager_config: WorkFileConfig
- dissolve_fields: List[str] | None = None
- sql_expressions: List[str] | None = None
composition_configs.type_defs module
- class composition_configs.type_defs.GdbFilePath[source]
Bases:
strPath to a feature class or table inside a .gdb.