Skip to content

AssignSchemeZone

Type ISIAPIAssignSchemeZone · Interface
Namespace SIDRASolutions.SI.API
Assembly SIDRASolutions.SI.API.dll
COM CLSID DEB34AEB-ABD7-4ED5-AF64-5E11CE200231

AssignSchemeZone wrapper interface

Declaration

[Guid("DEB34AEB-ABD7-4ED5-AF64-5E11CE200231")]
public interface ISIAPIAssignSchemeZone

Members

Properties

Property Type Summary
AssignZoneID string
LayoutX float The X-coordinate of the top-left corner of an Assign Scheme Zone Image in the Network Configuration Layout.
LayoutY float The Y-coordinate of the top-left corner of an Assign Scheme Zone Image in the Network Configuration Layout.
ZIndex int
IsInAssignNetwork bool
AssignScheme ISIAPIAssignScheme
AssignSchemeZoneConnections ISIAPIAssignSchemeZoneConnections

Methods

Method Returns Summary
AddAssignSchemeZoneConnection(ISIAPINetworkSite, int, float) ISIAPIAssignSchemeZoneConnection Connect this Assign Scheme Zone to a Site's Leg in this Network.
RemoveAssignSchemeZoneConnection(ISIAPIAssignSchemeZoneConnection) bool

Properties

AssignZoneID

string AssignZoneID { get; }

Type string

Code samples
string assignZoneID = assignSchemeZone.AssignZoneID;
CComBSTR assignZoneID;
assignSchemeZone->get_AssignZoneID(&assignZoneID);
assign_zone_id = assignSchemeZone.AssignZoneID

LayoutX

The X-coordinate of the top-left corner of an Assign Scheme Zone Image in the Network Configuration Layout.

float LayoutX { get; set; }

Type float

Remarks

The Network Configuration Layout is used in the Assign Network Configuration Dialog in the SIDRA INTERSECTION program. An Assign Scheme Zone is shown as a circle. The dimension of an Assign Scheme Zone Image in the Network Configuration Layout is 60 x 60 pixels. In the Assign Network Configuration Dialog, the start point of view is (5000, 5000). So the Zones are added in through this dialog are usually located around the point (5000, 5000). For example, Zone1 (5200, 5100), Zone2 (5700, 5100). The Zones' locations in the detailed Assign Network Layout Display are based on the relative ratio of the Zones' locations in the Network Configuration Layout.

We suggest the layoutX and layoutY values to be around 5000, and between 0 and 10000.

Code samples
float layoutX = assignSchemeZone.LayoutX;
assignSchemeZone.LayoutX = 0.0;
double layoutX;
assignSchemeZone->get_LayoutX(&layoutX);
assignSchemeZone->put_LayoutX(0.0);
layout_x = assignSchemeZone.LayoutX
assignSchemeZone.LayoutX = 0.0

LayoutY

The Y-coordinate of the top-left corner of an Assign Scheme Zone Image in the Network Configuration Layout.

float LayoutY { get; set; }

Type float

Remarks

The Network Configuration Layout is used in the Assign Network Configuration Dialog in the SIDRA INTERSECTION program. An Assign Scheme Zone is shown as a circle. The dimension of an Assign Scheme Zone Image in the Network Configuration Layout is 60 x 60 pixels. In the Assign Network Configuration Dialog, the start point of view is (5000, 5000). So the Zones are added in through this dialog are usually located around the point (5000, 5000). For example, Zone1 (5200, 5100), Zone2 (5700, 5100). The Zones' locations in the detailed Assign Network Layout Display are based on the relative ratio of the Zones' locations in the Network Configuration Layout.

We suggest the layoutX and layoutY values to be around 5000, and between 0 and 10000.

Code samples
float layoutY = assignSchemeZone.LayoutY;
assignSchemeZone.LayoutY = 0.0;
double layoutY;
assignSchemeZone->get_LayoutY(&layoutY);
assignSchemeZone->put_LayoutY(0.0);
layout_y = assignSchemeZone.LayoutY
assignSchemeZone.LayoutY = 0.0

ZIndex

int ZIndex { get; set; }

Type int

Code samples
int zIndex = assignSchemeZone.ZIndex;
assignSchemeZone.ZIndex = 0;
long zIndex;
assignSchemeZone->get_ZIndex(&zIndex);
assignSchemeZone->put_ZIndex(0);
z_index = assignSchemeZone.ZIndex
assignSchemeZone.ZIndex = 0

IsInAssignNetwork

bool IsInAssignNetwork { get; set; }

Type bool

Code samples
bool isInAssignNetwork = assignSchemeZone.IsInAssignNetwork;
assignSchemeZone.IsInAssignNetwork = true;
VARIANT_BOOL isInAssignNetwork;
assignSchemeZone->get_IsInAssignNetwork(&isInAssignNetwork);
assignSchemeZone->put_IsInAssignNetwork(VARIANT_TRUE);
is_in_assign_network = assignSchemeZone.IsInAssignNetwork
assignSchemeZone.IsInAssignNetwork = True

AssignScheme

ISIAPIAssignScheme AssignScheme { get; }

Type ISIAPIAssignScheme

Code samples
var assignScheme = assignSchemeZone.AssignScheme;
CComPtr<ISIAPIAssignScheme> assignScheme;
assignSchemeZone->get_AssignScheme(&assignScheme);
assign_scheme = assignSchemeZone.AssignScheme

AssignSchemeZoneConnections

ISIAPIAssignSchemeZoneConnections AssignSchemeZoneConnections { get; }

Type ISIAPIAssignSchemeZoneConnections

Code samples
var assignSchemeZoneConnections = assignSchemeZone.AssignSchemeZoneConnections;
CComPtr<ISIAPIAssignSchemeZoneConnections> assignSchemeZoneConnections;
assignSchemeZone->get_AssignSchemeZoneConnections(&assignSchemeZoneConnections);
assign_scheme_zone_connections = assignSchemeZone.AssignSchemeZoneConnections

Methods

AddAssignSchemeZoneConnection(ISIAPINetworkSite, int, float)

Connect this Assign Scheme Zone to a Site's Leg in this Network.

ISIAPIAssignSchemeZoneConnection AddAssignSchemeZoneConnection(ISIAPINetworkSite nwSite, int legOrientation, float zoneAzimuthAngle)

Parameters

Name Type Description
nwSite ISIAPINetworkSite the NetworkSite to be connected
legOrientation int the Orientation of the Leg in the NetworkSite
zoneAzimuthAngle float Azimuth Angle on the Zone for the connection point. An Assign Scheme Zone is shown as a circle in a Display. Use zoneAzimuthAngle to specify the connection point on the circle. Angle Guide: 0: North, 45: Northeast, 90: East, 135: Southeast, 180: South, 225: Southwest, 270: West, 315: Northwest.

Returns ISIAPIAssignSchemeZoneConnection - the new added Assign Scheme Zone Connection

Remarks

zoneAzimuthAngle is a transformed version of the AssignSchemeZoneConnection's Angle stored in the project file, where angles are measured counter-clockwise from East, i.e. 0: East, 90: North, 180: West, etc.

Code samples
var result = assignSchemeZone.AddAssignSchemeZoneConnection(null, 0, 0.0);
CComPtr<ISIAPIAssignSchemeZoneConnection> result;
assignSchemeZone->AddAssignSchemeZoneConnection(NULL, 0, 0.0, &result);
result = assignSchemeZone.AddAssignSchemeZoneConnection(None, 0, 0.0)

RemoveAssignSchemeZoneConnection(ISIAPIAssignSchemeZoneConnection)

bool RemoveAssignSchemeZoneConnection(ISIAPIAssignSchemeZoneConnection assignSchemeZoneConnection)

Parameters

Name Type Description
assignSchemeZoneConnection ISIAPIAssignSchemeZoneConnection

Returns bool

Code samples
bool result = assignSchemeZone.RemoveAssignSchemeZoneConnection(null);
VARIANT_BOOL result;
assignSchemeZone->RemoveAssignSchemeZoneConnection(NULL, &result);
result = assignSchemeZone.RemoveAssignSchemeZoneConnection(None)