public Prop CreateProp(PropOptions positionerOptions) { var createParamsInterop = new PropCreateParamsInterop { Name = positionerOptions.GetName(), GeometryId = positionerOptions.GetGeometryId(), ElevationMode = positionerOptions.GetElevationMode(), HeadingDegrees = positionerOptions.GetHeadingDegrees(), LatitudeDegrees = positionerOptions.GetLatitudeDegrees(), LongitudeDegrees = positionerOptions.GetLongitudeDegrees(), Elevation = positionerOptions.GetElevation(), IndoorMapId = positionerOptions.GetIndoorMapId(), IndoorMapFloorId = positionerOptions.GetIndoorMapFloorId() }; var propId = NativePropsApi_CreateProp(NativePluginRunner.API, ref createParamsInterop); var positioner = new Prop( this, propId, positionerOptions); m_propIdToObject.Add(propId, positioner); return(positioner); }
// Use Api.Instance.PropApi.CreateProp for public construction internal Prop( PropsApiInternal propsApiInternal, int id, PropOptions options) { if (propsApiInternal == null) { throw new ArgumentNullException("propsApiInternal"); } if (options == null) { throw new ArgumentNullException("options"); } if (id == InvalidId) { throw new ArgumentException("invalid id"); } m_propsApiInternal = propsApiInternal; Id = id; m_elevationMode = options.GetElevationMode(); m_position.SetLatitude(options.GetLatitudeDegrees()); m_position.SetLongitude(options.GetLongitudeDegrees()); m_elevation = options.GetElevation(); m_indoorMapId = options.GetIndoorMapId(); m_indoorMapFloorId = options.GetIndoorMapFloorId(); m_name = options.GetName(); m_geometryId = options.GetGeometryId(); m_headingDegrees = options.GetHeadingDegrees(); }