Method PlaceObject
PlaceObject(string, string, HandingType, double, double, double, double, double, double, AltitudeType, double, bool, bool, bool)
Places given catalog item in the scene.
Declaration
public Scene.Object PlaceObject(string catalogFilename, string articleReference, Scene.Object.HandingType handingType, double dimensionX, double dimensionY, double dimensionZ, double positionX, double positionY, double altitude, Scene.Object.AltitudeType altitudeType, double oxyAngle, bool open, bool percuss, bool placeToPool)
Parameters
Type | Name | Description |
---|---|---|
string | catalogFilename | Catalog filename from which the object to be placed comes. |
string | articleReference | Article reference of the object to be placed. |
Scene.Object.HandingType | handingType |
|
double | dimensionX | Width of the object to be placed, in the scene
measurement units. You can pass |
double | dimensionY | Depth of the object to be placedm in the scene
measurement units. You can pass |
double | dimensionZ | Height of the object to be placed, in the scene
measurement units. You can pass |
double | positionX | Position to place the object to, in the scene measurement units. |
double | positionY | Position to place the object to, in the scene measurement units. |
double | altitude | Altitude of the object to be placed. |
Scene.Object.AltitudeType | altitudeType | Specifies how the given altitude should be treated. |
double | oxyAngle | Specifies the rotation angle of the object in the horizontal plane, in degrees. |
bool | open | Indicates whether the object should be represented in its open visual state. |
bool | percuss | Indicates whether the object position should be adjusted depending on the object's percussions with other objects in the current scene. |
bool | placeToPool | Indicates whether the object should be placed in the pool, that is to say in the list of the objects being placed while in pricing view mode (with no information about its position) and with the possibility to be located manually in the scene in a second stage thanks to the "Place|Pool" KitchenDraw command. |
Returns
Type | Description |
---|---|
Scene.Object | The placed object. |
Examples
// There’s a feature in InSitu named “pool” (Poser – Pioche) menu.
// The meaning of its existence is to allow a user to first pull out from catalog all the objects listed in some quote, and
// then to find their place in a scene one by one.
// For this reason the objects placed in pool do not have any position in a scene yet, and so they are not visible
// on top, elevation and 3d views, but still are listed in the pricing view.
// This is the difference between Pricing view and the others: it displays objects from pool while others not.
// Having some objects in pool is perfectly legal, even forever.
// So if you want to have some objects in pricing view, but not in other views – place them in pool.
// In UI it’s done by drag’n’dropping the objects, ironically, into the pricing view.
// In SDK, there’s the `placeToPool` parameter in the PlaceObject methods allowing to place an object to pool:
var obj = scene.PlaceObject(
"@K2", // catalog filename without ext
"FIBCF2", // key reference
Scene.Object.HandingType.None,
/* dimensions: */ -1.0, -1.0, -1.0, // -1 means "as defined in catalog"
/* pos & angle: */ 0, 0, 0, Scene.Object.AltitudeType.Under, 180.0,
open: false,
percuss: true,
placeToPool: true);