MCPcopy Create free account
hub / github.com/OSGeo/PROJ / createPositionVector

Method createPositionVector

src/iso19111/operation/transformation.cpp:594–617  ·  view source on GitHub ↗

\brief Instantiate a transformation with Position vector transformation * method. * * This is similar to createCoordinateFrameRotation(), except that the sign of * the rotation terms is inverted. * * @param properties See \ref general_properties of the Transformation. * At minimum the name should be defined. * @param sourceCRSIn Source CRS. * @param targetCRSIn Target CRS. * @param trans

Source from the content-addressed store, hash-verified

592 * @return new Transformation.
593 */
594TransformationNNPtr Transformation::createPositionVector(
595 const util::PropertyMap &properties, const crs::CRSNNPtr &sourceCRSIn,
596 const crs::CRSNNPtr &targetCRSIn, double translationXMetre,
597 double translationYMetre, double translationZMetre,
598 double rotationXArcSecond, double rotationYArcSecond,
599 double rotationZArcSecond, double scaleDifferencePPM,
600 const std::vector<metadata::PositionalAccuracyNNPtr> &accuracies) {
601
602 bool isGeocentric;
603 bool isGeog2D;
604 bool isGeog3D;
605 getTransformationType(sourceCRSIn, targetCRSIn, isGeocentric, isGeog2D,
606 isGeog3D);
607 return createSevenParamsTransform(
608 properties,
609 createMethodMapNameEPSGCode(useOperationMethodEPSGCodeIfPresent(
610 properties,
611 isGeocentric ? EPSG_CODE_METHOD_POSITION_VECTOR_GEOCENTRIC
612 : isGeog2D ? EPSG_CODE_METHOD_POSITION_VECTOR_GEOGRAPHIC_2D
613 : EPSG_CODE_METHOD_POSITION_VECTOR_GEOGRAPHIC_3D)),
614 sourceCRSIn, targetCRSIn, translationXMetre, translationYMetre,
615 translationZMetre, rotationXArcSecond, rotationYArcSecond,
616 rotationZArcSecond, scaleDifferencePPM, accuracies);
617}
618
619// ---------------------------------------------------------------------------
620

Callers

nothing calls this directly

Tested by

no test coverage detected