返回介绍

指南

MxCAD API 文档

4. 圆

发布于 2024-07-31 21:40:00 字数 3490 浏览 0 评论 0 收藏 0

我们可以通过实例化一个 McDbCircle() 对象创建圆。通过设置 McDbCircle() 实例对象的圆心 center 半径 radius 绘制圆,也可以直接利用 McDbCircle() 的构造函数直接设置圆的圆心与半径,如:new McDbCircle(x, y, z, r)。

此外,还可以通过 mxcad 实例对象提供的 drawCircle() 方法直接绘制圆。

点击 McDbCircle()drawCircle() 查看详细属性和方法说明。

import { MxCpp, McCmColor, McDbCircle } from "mxcad"

const mxcad = MxCpp.getCurrentMxCAD()
const circle = new McDbCircle(-100, 300, 0, 20)
circle.trueColor = new McCmColor(255, 0, 0)
mxcad.drawEntity(circle)

const circle_2 = new McDbCircle()
circle_2.center = new McGePoint3d(-100, 300, 0)
circle_2.radius = 10
circle_2.trueColor = new McCmColor(0, 255, 0)
mxcad.drawEntity(circle_2)

mxcad.drawCircle(-100, 300, 30)

:::demo

import {  McObject, McDbCircle, McGePoint3d, McCmColor } from "mxcad"

export default () => {
    const mxcad = new McObject()
    mxcad.create({
      canvas: "#myCanvas",
      locateFile: (fileName: string)=> {
            // CDN 加载必须使用wasm/2d-st中的资源、因为github的限制无法使用wasm/2d 资源
            // 需要使用wasm/2d需要遵循浏览器同源策略或使用其他手段规避浏览器同源策略
            return "https://unpkg.com/mxcad/dist/wasm/2d-st/" + fileName
      },
      // 加载字体的目录位置
      fontspath: self.location.origin + "/mxcad_docs/fonts",
      // 加载转换后的图纸文件
      fileUrl: self.location.origin + "/mxcad_docs/test.mxweb",
      onOpenFileComplete: ()=>{
            const circle_1 = new McDbCircle(-100, 300, 0, 20)
            circle_1.trueColor = new McCmColor(255, 0, 0)
            mxcad.drawEntity(circle_1)

            const circle_2 = new McDbCircle()
            circle_2.center = new McGePoint3d(-100, 300, 0)
            circle_2.radius = 10
            circle_2.trueColor = new McCmColor(0, 255, 0)
            mxcad.drawEntity(circle_2)

            mxcad.drawCircle(-100, 300, 30)

            mxcad.zoomAll()
            mxcad.zoomScale(0.8)
      }
    })
    return (<div style="height: 500px; overflow: hidden;"><canvas id="myCanvas" ></canvas>
    </div>)
}

:::

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文