public RegistrationDefinition getWarpedRegistration() { IPointTransformer pointTransformer = this.getSourceToDestLatLonTransformer(); List<PositionAssociation> associationList = this.registration.GetAssociationList(); List<IImageTransformer.QualitySortPair> list = new List<IImageTransformer.QualitySortPair>(); for (int i = 0; i < associationList.Count; i++) { PositionAssociation positionAssociation = associationList[i]; bool invertError; LatLon p = pointTransformer.getTransformedPoint(positionAssociation.sourcePosition.pinPosition.latlon, out invertError); PositionAssociation positionAssociation2 = new PositionAssociation(positionAssociation.associationName, positionAssociation.imagePosition.pinPosition, new LatLonZoom(p.lat, p.lon, positionAssociation.sourcePosition.pinPosition.zoom), positionAssociation.globalPosition.pinPosition, new DirtyEvent()); positionAssociation2.sourcePosition.invertError = invertError; positionAssociation2.sourcePosition.SetErrorPosition(DisplayablePosition.ErrorMarker.AsContributor, positionAssociation.globalPosition.pinPosition.latlon); positionAssociation2.pinId = positionAssociation.pinId; double num = LatLon.DistanceInMeters(p, positionAssociation.globalPosition.pinPosition.latlon); positionAssociation2.qualityMessage = LatLon.PrettyDistance(num); list.Add(new IImageTransformer.QualitySortPair(positionAssociation2, num)); } list.Sort(); RegistrationDefinition registrationDefinition = new RegistrationDefinition(new DirtyEvent()); registrationDefinition.warpStyle = this.registration.warpStyle; foreach (IImageTransformer.QualitySortPair current in list) { registrationDefinition.AddAssociation(current.assoc); } registrationDefinition.isLocked = true; return registrationDefinition; }
public PolynomialImageTransformer(RegistrationDefinition registration, InterpolationMode interpolationMode, int polynomialDegree) : base(registration, interpolationMode) { List<PositionAssociation> associationList = registration.GetAssociationList(); TransformationStyle arg_15_0 = registration.warpStyle; int num = associationList.Count; if (num == 2) { num++; } JamaMatrix jamaMatrix = new JamaMatrix(num, 2); JamaMatrix jamaMatrix2 = new JamaMatrix(num, 2); for (int i = 0; i < num; i++) { LatLon latLon = (i == associationList.Count) ? PolynomialImageTransformer.getThirdPosition(associationList[0].sourcePosition.pinPosition.latlon, associationList[1].sourcePosition.pinPosition.latlon, true) : associationList[i].sourcePosition.pinPosition.latlon; jamaMatrix.SetElement(i, 0, latLon.lon); jamaMatrix.SetElement(i, 1, latLon.lat); LatLon latLon2 = (i == associationList.Count) ? PolynomialImageTransformer.getThirdPosition(MercatorCoordinateSystem.LatLonToMercator(associationList[0].globalPosition.pinPosition.latlon), MercatorCoordinateSystem.LatLonToMercator(associationList[1].globalPosition.pinPosition.latlon), false) : MercatorCoordinateSystem.LatLonToMercator(associationList[i].globalPosition.pinPosition.latlon); jamaMatrix2.SetElement(i, 0, latLon2.lon); jamaMatrix2.SetElement(i, 1, latLon2.lat); } this.destMercatorToSourceTransformer = PolynomialImageTransformer.getPolyPointTransformer(jamaMatrix, jamaMatrix2, polynomialDegree); this.sourceToDestMercatorTransformer_approximate = PolynomialImageTransformer.getApproximateInverterPolyPointTransformer(jamaMatrix, jamaMatrix2, polynomialDegree); DownhillInverterPointTransformer flakyPointTransformer = new DownhillInverterPointTransformer(this.destMercatorToSourceTransformer, this.sourceToDestMercatorTransformer_approximate); IPointTransformer sourceToMercator = new RobustPointTransformer(flakyPointTransformer, this.sourceToDestMercatorTransformer_approximate); this.destLatLonToSourceTransformer = new LatLonToSourceTransform(this.destMercatorToSourceTransformer); this.sourceToDestLatLonTransformer = new SourceToLatLonTransform(sourceToMercator); }
public PolynomialImageTransformer(RegistrationDefinition registration, InterpolationMode interpolationMode, int polynomialDegree) : base(registration, interpolationMode) { List <PositionAssociation> associationList = registration.GetAssociationList(); TransformationStyle arg_15_0 = registration.warpStyle; int num = associationList.Count; if (num == 2) { num++; } JamaMatrix jamaMatrix = new JamaMatrix(num, 2); JamaMatrix jamaMatrix2 = new JamaMatrix(num, 2); for (int i = 0; i < num; i++) { LatLon latLon = (i == associationList.Count) ? PolynomialImageTransformer.getThirdPosition(associationList[0].sourcePosition.pinPosition.latlon, associationList[1].sourcePosition.pinPosition.latlon, true) : associationList[i].sourcePosition.pinPosition.latlon; jamaMatrix.SetElement(i, 0, latLon.lon); jamaMatrix.SetElement(i, 1, latLon.lat); LatLon latLon2 = (i == associationList.Count) ? PolynomialImageTransformer.getThirdPosition(MercatorCoordinateSystem.LatLonToMercator(associationList[0].globalPosition.pinPosition.latlon), MercatorCoordinateSystem.LatLonToMercator(associationList[1].globalPosition.pinPosition.latlon), false) : MercatorCoordinateSystem.LatLonToMercator(associationList[i].globalPosition.pinPosition.latlon); jamaMatrix2.SetElement(i, 0, latLon2.lon); jamaMatrix2.SetElement(i, 1, latLon2.lat); } this.destMercatorToSourceTransformer = PolynomialImageTransformer.getPolyPointTransformer(jamaMatrix, jamaMatrix2, polynomialDegree); this.sourceToDestMercatorTransformer_approximate = PolynomialImageTransformer.getApproximateInverterPolyPointTransformer(jamaMatrix, jamaMatrix2, polynomialDegree); DownhillInverterPointTransformer flakyPointTransformer = new DownhillInverterPointTransformer(this.destMercatorToSourceTransformer, this.sourceToDestMercatorTransformer_approximate); IPointTransformer sourceToMercator = new RobustPointTransformer(flakyPointTransformer, this.sourceToDestMercatorTransformer_approximate); this.destLatLonToSourceTransformer = new LatLonToSourceTransform(this.destMercatorToSourceTransformer); this.sourceToDestLatLonTransformer = new SourceToLatLonTransform(sourceToMercator); }
public RegistrationDefinition getWarpedRegistration() { IPointTransformer pointTransformer = this.getSourceToDestLatLonTransformer(); List <PositionAssociation> associationList = this.registration.GetAssociationList(); List <IImageTransformer.QualitySortPair> list = new List <IImageTransformer.QualitySortPair>(); for (int i = 0; i < associationList.Count; i++) { PositionAssociation positionAssociation = associationList[i]; bool invertError; LatLon p = pointTransformer.getTransformedPoint(positionAssociation.sourcePosition.pinPosition.latlon, out invertError); PositionAssociation positionAssociation2 = new PositionAssociation(positionAssociation.associationName, positionAssociation.imagePosition.pinPosition, new LatLonZoom(p.lat, p.lon, positionAssociation.sourcePosition.pinPosition.zoom), positionAssociation.globalPosition.pinPosition, new DirtyEvent()); positionAssociation2.sourcePosition.invertError = invertError; positionAssociation2.sourcePosition.SetErrorPosition(DisplayablePosition.ErrorMarker.AsContributor, positionAssociation.globalPosition.pinPosition.latlon); positionAssociation2.pinId = positionAssociation.pinId; double num = LatLon.DistanceInMeters(p, positionAssociation.globalPosition.pinPosition.latlon); positionAssociation2.qualityMessage = LatLon.PrettyDistance(num); list.Add(new IImageTransformer.QualitySortPair(positionAssociation2, num)); } list.Sort(); RegistrationDefinition registrationDefinition = new RegistrationDefinition(new DirtyEvent()); registrationDefinition.warpStyle = this.registration.warpStyle; foreach (IImageTransformer.QualitySortPair current in list) { registrationDefinition.AddAssociation(current.assoc); } registrationDefinition.isLocked = true; return(registrationDefinition); }
public RegistrationDefinition CreateOrUpdateRegistrationDefinition( string scope, RegistrationDefinition registrationDefinition, Guid registratonDefinitionId = default(Guid)) { return(this.ManagedServicesClient.RegistrationDefinitions.CreateOrUpdate( scope: scope, registratonDefinitionId: registratonDefinitionId.ToString(), requestBody: registrationDefinition, apiVersion: API_VERSION)); }
public PSRegistrationDefinition(RegistrationDefinition registrationDefinition) { if (registrationDefinition != null) { this.Id = registrationDefinition.Id; this.Name = registrationDefinition.Name; this.Type = registrationDefinition.Type; this.Plan = new PSPlan(registrationDefinition.Plan); this.Properties = new PSRegistrationDefinitionProperties(registrationDefinition.Properties); } }
public HomographicImageTransformer(RegistrationDefinition registration, InterpolationMode interpolationMode) : base(registration, interpolationMode) { List<PositionAssociation> associationList = registration.GetAssociationList(); TransformationStyle arg_15_0 = registration.warpStyle; int count = associationList.Count; JamaMatrix jamaMatrix = new JamaMatrix(count, 2); JamaMatrix jamaMatrix2 = new JamaMatrix(count, 2); for (int i = 0; i < count; i++) { LatLon latlon = associationList[i].sourcePosition.pinPosition.latlon; jamaMatrix.SetElement(i, 0, latlon.lon); jamaMatrix.SetElement(i, 1, latlon.lat); LatLon latLon = MercatorCoordinateSystem.LatLonToMercator(associationList[i].globalPosition.pinPosition.latlon); jamaMatrix2.SetElement(i, 0, latLon.lon); jamaMatrix2.SetElement(i, 1, latLon.lat); } }
public HomographicImageTransformer(RegistrationDefinition registration, InterpolationMode interpolationMode) : base(registration, interpolationMode) { List<PositionAssociation> associationList = registration.GetAssociationList(); TransformationStyle arg_15_0 = registration.warpStyle; int count = associationList.Count; JamaMatrix jamaMatrix = new JamaMatrix(count, 2); JamaMatrix jamaMatrix2 = new JamaMatrix(count, 2); for (int i = 0; i < count; i++) { LatLon latlon = associationList[i].sourcePosition.pinPosition.latlon; jamaMatrix.SetElement(i, 0, latlon.lon); jamaMatrix.SetElement(i, 1, latlon.lat); LatLon latLon = MercatorCoordinateSystem.LatLonToMercator(associationList[i].globalPosition.pinPosition.latlon); jamaMatrix2.SetElement(i, 0, latLon.lon); jamaMatrix2.SetElement(i, 1, latLon.lat); } }
public IImageTransformer(RegistrationDefinition registration, InterpolationMode interpolationMode) { this.registration = new RegistrationDefinition(registration, new DirtyEvent()); this.interpolationMode = interpolationMode; }
public SpecificationBuilder(RegistrationDefinition registrationDefinition) { RegistrationDefinition = registrationDefinition; }
public override void ExecuteCmdlet() { var scope = this.GetDefaultScope(); var definitionId = Guid.NewGuid().ToString(); var managedByTenantId = string.Empty; if (this.IsParameterBound(x => x.Name)) { if (!this.Name.IsGuid()) { throw new ApplicationException("Name must be a valid GUID."); } definitionId = (new Guid(this.Name)).ToString(); } if (!this.ManagedByTenantId.IsGuid()) { throw new ApplicationException("ManagedByTenantId must be a valid GUID."); } else { managedByTenantId = (new Guid(this.ManagedByTenantId)).ToString(); } if (this.IsParameterBound(x => x.Authorization) && (this.IsParameterBound(x => x.PrincipalId) || this.IsParameterBound(x => x.RoleDefinitionId))) { throw new ApplicationException("Authorization parameter is supported only when RoleDefinitionId and PrincipalId are null."); } if (!this.IsParameterBound(x => x.Authorization) && (!this.IsParameterBound(x => x.PrincipalId) || !this.IsParameterBound(x => x.RoleDefinitionId))) { throw new ApplicationException("Please provide RoleDefinitionId and PrincipalId parameters together or Authorization parameter."); } if (this.Authorization == null && this.IsParameterBound(x => x.PrincipalId) && this.IsParameterBound(x => x.RoleDefinitionId)) { this.Authorization = new Authorization[] { new Authorization { RoleDefinitionId = this.RoleDefinitionId, PrincipalId = this.PrincipalId } }; } Plan plan = null; if (this.IsParameterBound(x => x.PlanName) && this.IsParameterBound(x => x.PlanPublisher) && this.IsParameterBound(x => x.PlanProduct) && this.IsParameterBound(x => x.PlanVersion)) { plan = new Plan { Name = this.PlanName, Product = this.PlanProduct, Publisher = this.PlanPublisher, Version = this.PlanVersion }; } ConfirmAction(MyInvocation.InvocationName, $"{scope}/providers/Microsoft.ManagedServices/registrationDefinitions/{definitionId}", () => { var registrationDefinition = new RegistrationDefinition { Plan = plan, Properties = new RegistrationDefinitionProperties { Description = this.Description, RegistrationDefinitionName = this.DisplayName, ManagedByTenantId = managedByTenantId, Authorizations = this.Authorization } }; var result = this.PSManagedServicesClient.CreateOrUpdateRegistrationDefinition( scope: scope, registrationDefinition: registrationDefinition, registratonDefinitionId: definitionId); WriteObject(new PSRegistrationDefinition(result), true); }); }
public ComponentRegistryDefinition() { PluginFolder = string.Empty; RegistrationsDefinition = new RegistrationDefinition[0]; }
public ComponentSetRegistrationDefinition() { RegistrationsDefinition = new RegistrationDefinition[0]; }
public RegistrationControlRecord(RegistrationDefinition model, ReadyToLockIfc readyToLock) { this.model = model; this.readyToLock = readyToLock; }