{"version":3,"file":"svg-circle.vue2.mjs","sources":["../../../../../../src/components/design/svg/svg-circle.vue"],"sourcesContent":["<template>\n    <svg-base\n        :element=\"element\"\n        :svgOptions=\"svgOptions\"\n        :draw=\"draw\"\n        :changeSize=\"changeSize\" />\n</template>\n\n<script setup lang=\"ts\">\nimport { reactive } from 'vue-demi';\n\nimport { MyElement, Point } from '@myprint/design/types/entity';\nimport { unit2px } from '@myprint/design/utils/devicePixelRatio';\nimport SvgBase from '@myprint/design/components/design/svg/svg-base.vue';\nimport { BaseType, Selection } from 'd3-selection';\nimport { Path } from 'd3-path';\nimport * as d3Path from 'd3-path';\nimport { getRecursionParentPanel } from '@myprint/design/utils/elementUtil';\n\nconst props = withDefaults(defineProps<{\n    element?: MyElement\n}>(), {\n    element: () => ({} as MyElement)\n});\n\nconst svgOptions = reactive({\n    width: 0,\n    height: 0,\n    rotateControl: {},\n    centerPoint: {} as Point,\n    drawAuxiliary: false\n});\n\nfunction changeSize() {\n    initPoint();\n    return true;\n}\n\nfunction draw(_chart: Selection<BaseType, any, BaseType, any>) {\n    let path: Path = d3Path.path() as Path;\n    // console.log(123)\n    path.moveTo(svgOptions.centerPoint.x * 2, svgOptions.centerPoint.x);\n    path.arc(svgOptions.centerPoint.x, svgOptions.centerPoint.x, svgOptions.centerPoint.x, 0, Math.PI * 2);\n    \n    return path;\n    // ellipse.attr(\"cx\", svgOptions.centerPoint.x) // 设置椭圆中心的 x 坐标\n    //     .attr(\"cy\", svgOptions.centerPoint.y) // 设置椭圆中心的 y 坐标\n    //     .attr(\"rx\", svgOptions.centerPoint.x) // 设置椭圆的 x 轴半径\n    //     .attr(\"ry\", svgOptions.centerPoint.y) // 设置椭圆的 y 轴半径\n    //     .attr(\"fill\", \"gray\"); // 设置椭圆的填充颜色\n}\n\ninitPoint();\n\n\nfunction initPoint() {\n    svgOptions.width = unit2px(props.element.width, getRecursionParentPanel(props.element));\n    svgOptions.height = unit2px(props.element.height, getRecursionParentPanel(props.element));\n    \n    svgOptions.centerPoint = { x: svgOptions.width / 2, y: svgOptions.height / 2 };\n}\n\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;AAmBA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAMd,IAAA,MAAM,aAAa,QAAS,CAAA;AAAA,MACxB,KAAO,EAAA,CAAA;AAAA,MACP,MAAQ,EAAA,CAAA;AAAA,MACR,eAAe,EAAC;AAAA,MAChB,aAAa,EAAC;AAAA,MACd,aAAe,EAAA,KAAA;AAAA,KAClB,CAAA,CAAA;AAED,IAAA,SAAS,UAAa,GAAA;AAClB,MAAU,SAAA,EAAA,CAAA;AACV,MAAO,OAAA,IAAA,CAAA;AAAA,KACX;AAEA,IAAA,SAAS,KAAK,MAAiD,EAAA;AAC3D,MAAI,IAAA,IAAA,GAAa,OAAO,IAAK,EAAA,CAAA;AAE7B,MAAA,IAAA,CAAK,OAAO,UAAW,CAAA,WAAA,CAAY,IAAI,CAAG,EAAA,UAAA,CAAW,YAAY,CAAC,CAAA,CAAA;AAClE,MAAA,IAAA,CAAK,GAAI,CAAA,UAAA,CAAW,WAAY,CAAA,CAAA,EAAG,UAAW,CAAA,WAAA,CAAY,CAAG,EAAA,UAAA,CAAW,WAAY,CAAA,CAAA,EAAG,CAAG,EAAA,IAAA,CAAK,KAAK,CAAC,CAAA,CAAA;AAErG,MAAO,OAAA,IAAA,CAAA;AAAA,KAMX;AAEA,IAAU,SAAA,EAAA,CAAA;AAGV,IAAA,SAAS,SAAY,GAAA;AACjB,MAAW,UAAA,CAAA,KAAA,GAAQ,QAAQ,KAAM,CAAA,OAAA,CAAQ,OAAO,uBAAwB,CAAA,KAAA,CAAM,OAAO,CAAC,CAAA,CAAA;AACtF,MAAW,UAAA,CAAA,MAAA,GAAS,QAAQ,KAAM,CAAA,OAAA,CAAQ,QAAQ,uBAAwB,CAAA,KAAA,CAAM,OAAO,CAAC,CAAA,CAAA;AAExF,MAAW,UAAA,CAAA,WAAA,GAAc,EAAE,CAAG,EAAA,UAAA,CAAW,QAAQ,CAAG,EAAA,CAAA,EAAG,UAAW,CAAA,MAAA,GAAS,CAAE,EAAA,CAAA;AAAA,KACjF;;;;;;;;;;;;;;"}