{"version":3,"file":"index.mjs","sources":["../../../../../../packages/components/geometries/ellipse/index.ts"],"sourcesContent":["/*\n * @Author: zouyaoji@https://github.com/zouyaoji\n * @Date: 2021-09-16 09:28:13\n * @LastEditTime: 2022-03-30 11:36:15\n * @LastEditors: zouyaoji\n * @Description:\n * @FilePath: \\vue-cesium@next\\packages\\components\\geometries\\ellipse\\index.ts\n */\nimport { VcComponentInternalInstance, VcComponentPublicInstance, VcPosition, VcReadyObject } from '@vue-cesium/utils/types'\nimport { defineComponent, getCurrentInstance, createCommentVNode } from 'vue'\nimport { useGeometries } from '@vue-cesium/composables'\nimport { kebabCase } from '@vue-cesium/utils/util'\nimport {\n  center,\n  semiMajorAxis,\n  semiMinorAxis,\n  ellipsoid,\n  height,\n  extrudedHeight,\n  rotation,\n  stRotation,\n  granularity,\n  vertexFormat\n} from '@vue-cesium/utils/cesium-props'\nimport { commonEmits } from '@vue-cesium/utils/emits'\nexport const ellipseGeometryProps = {\n  ...center,\n  ...semiMajorAxis,\n  ...semiMinorAxis,\n  ...ellipsoid,\n  ...height,\n  ...extrudedHeight,\n  ...rotation,\n  ...stRotation,\n  ...granularity,\n  ...vertexFormat\n}\nexport default defineComponent({\n  name: 'VcGeometryEllipse',\n  props: ellipseGeometryProps,\n  emits: commonEmits,\n  setup(props, ctx) {\n    // state\n    const instance = getCurrentInstance() as VcComponentInternalInstance\n    instance.cesiumClass = 'EllipseGeometry'\n    useGeometries(props, ctx, instance)\n\n    return () => createCommentVNode(kebabCase(instance.proxy?.$options.name || 'v-if'))\n  }\n})\n\nexport type VcGeometryEllipseProps = {\n  /**\n   * The ellipse's center point in the fixed frame.\n   */\n  center: VcPosition\n  /**\n   * The length of the ellipse's semi-major axis in meters.\n   */\n  semiMajorAxis: number\n  /**\n   * The length of the ellipse's semi-minor axis in meters.\n   */\n  semiMinorAxis: number\n  /**\n   * The ellipsoid the ellipse will be on.\n   */\n  ellipsoid?: Cesium.Ellipsoid\n  /**\n   * The distance in meters between the ellipse and the ellipsoid surface.\n   */\n  height?: number\n  /**\n   * The distance in meters between the ellipse's extruded face and the ellipsoid surface.\n   */\n  extrudedHeight?: number\n  /**\n   * The angle of rotation counter-clockwise from north.\n   * Default value: 0.0\n   */\n  rotation?: number\n  /**\n   * The rotation of the texture coordinates counter-clockwise from north.\n   * Default value: 0.0\n   */\n  stRotation?: number\n  /**\n   * The angular distance between points on the ellipse in radians.\n   */\n  granularity?: number\n  /**\n   * The vertex attributes to be computed.\n   */\n  vertexFormat?: Cesium.VertexFormat\n  /**\n   * Triggers before the VcGeometryEllipse is loaded.\n   */\n  onBeforeLoad?: (instance: VcComponentInternalInstance) => void\n  /**\n   * Triggers when the VcGeometryEllipse is successfully loaded.\n   */\n  onReady?: (readyObject: VcReadyObject) => void\n  /**\n   * Triggers when the component load failed.\n   */\n  onUnready?: (e: any) => void\n  /**\n   * Triggers when the VcGeometryEllipse is destroyed.\n   */\n  onDestroyed?: (instance: VcComponentInternalInstance) => void\n}\n\nexport type VcGeometryEllipseRef = VcComponentPublicInstance<VcGeometryEllipseProps>\n"],"names":[],"mappings":";;;;;;;;AAyBO,MAAM,oBAAuB,GAAA;AAAA,EAClC,GAAG,MAAA;AAAA,EACH,GAAG,aAAA;AAAA,EACH,GAAG,aAAA;AAAA,EACH,GAAG,SAAA;AAAA,EACH,GAAG,MAAA;AAAA,EACH,GAAG,cAAA;AAAA,EACH,GAAG,QAAA;AAAA,EACH,GAAG,UAAA;AAAA,EACH,GAAG,WAAA;AAAA,EACH,GAAG,YAAA;AACL,EAAA;AACA,sBAAe,eAAgB,CAAA;AAAA,EAC7B,IAAM,EAAA,mBAAA;AAAA,EACN,KAAO,EAAA,oBAAA;AAAA,EACP,KAAO,EAAA,WAAA;AAAA,EACP,KAAA,CAAM,OAAO,GAAK,EAAA;AAEhB,IAAA,MAAM,WAAW,kBAAmB,EAAA,CAAA;AACpC,IAAA,QAAA,CAAS,WAAc,GAAA,iBAAA,CAAA;AACvB,IAAc,aAAA,CAAA,KAAA,EAAO,KAAK,QAAQ,CAAA,CAAA;AAElC,IAAA,OAAO,MAAG;AA/Cd,MAAA,IAAA,EAAA,CAAA;AA+CiB,MAAA,OAAA,kBAAA,CAAmB,YAAU,EAAS,GAAA,QAAA,CAAA,KAAA,KAAT,mBAAgB,QAAS,CAAA,IAAA,KAAQ,MAAM,CAAC,CAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GACpF;AACF,CAAC,CAAA;;;;"}