Assemblies And Instances   

<<< Transformations Chapters Reading and Writing Parasolid Data >>>

Contents

[back to top]


22.1 Introduction

Assemblies and instances in the PK are primarily provided to enable applications to transfer assembly information via Parasolid transmit files. It is not intended to provide complex assembly modeling capability in Parasolid.

See Chapter 100, “Archives”, for further information about Parasolid transmit files.

 

Related Topics:

22.1.1 What is an assembly?

An assembly is a collection of instances of parts (parts are bodies or assemblies):

22.1.2 What is an instance?

An instance is a pointer to a part contained within an assembly:

22.1.3 What is a transform?

A transform positions a part in the coordinate frame of an assembly:

[back to top]


22.2 Transmit files

A Parasolid transmit file (part file) contains one or more non-instanced parts, together with all their sub-parts, down to the bodies at the bottom level. These assembly graphs are disjoint, i.e. they have no common parts.

22.2.1 Part names

The system-defined name attribute (SDL/TYSA_NAME) may be used by applications wishing to attach a textual name to identify parts in a part file. Alternatively, the entity ids of the instances may be used to reference particular instances in a part file.

[back to top]


22.3 PK functions

The following functions can be used to create, modify and request information about assemblies.

22.3.1 Creation and modification functions

 

Function

Description

PK_ASSEMBLY_create_empty

creates an empty assembly

PK_INSTANCE_create

creates an instance, given a standard form containing assembly, transform and part

PK_INSTANCE_change_part

alters the instance to instance a different part

PK_INSTANCE_replace_transf

replaces the transform of an instance

PK_ASSEMBLY_transform

transforms an assembly by transforming all its instances

PK_INSTANCE_transform

transforms an instance by transforming its transform

PK_ASSEMBLY_make_level_assembly

Creates a new one-level assembly which is a flattened version of the given assembly. The new assembly contains new instances and transforms, but instances existing parts. There is one instance in the new assembly, for each path from the given assembly down to a body at the bottom level of the assembly graph.

22.3.2 Navigation functions

 

Function

Description

PK_ASSEMBLY_ask_parts

returns the parts directly instanced by an assembly, with duplicates if a part is instanced more than once

PK_ASSEMBLY_ask_instances

returns the instances directly referenced by an assembly

PK_ASSEMBLY_ask_parts_transfs

returns the parts and transforms corresponding to the instances directly referenced by an assembly

PK_INSTANCE_ask

returns the standard form of an instance, which consists of its owning assembly, referenced part, and transform

PK_PART_ask_ref_instances

returns the instances which instance the given part

22.3.3 PK_ENTITY functions

Most PK_ENTITY functions apply to assemblies and instances. In particular:

PK_ENTITY_copy_2

This function may be used to copy an assembly, in which case its instances and transforms are copied, but not the parts it instances.

It may also be used to copy an instance, in which case only the instance and its transform is copied.

PK_ENTITY_delete

Deleting an assembly deletes its instances and transforms, but not the instanced parts.

Deleting an instance deletes its transform but not the part it instances.

22.3.4 PK_PART functions which work on assemblies

22.3.5 PK_TOPOL functions which work on assemblies

 

[back to top]

<<< Transformations Chapters Reading and Writing Parasolid Data >>>