CAD原理实验报告Word下载.docx

上传人:b****8 文档编号:22263536 上传时间:2023-02-03 格式:DOCX 页数:34 大小:85.13KB
下载 相关 举报
CAD原理实验报告Word下载.docx_第1页
第1页 / 共34页
CAD原理实验报告Word下载.docx_第2页
第2页 / 共34页
CAD原理实验报告Word下载.docx_第3页
第3页 / 共34页
CAD原理实验报告Word下载.docx_第4页
第4页 / 共34页
CAD原理实验报告Word下载.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

CAD原理实验报告Word下载.docx

《CAD原理实验报告Word下载.docx》由会员分享,可在线阅读,更多相关《CAD原理实验报告Word下载.docx(34页珍藏版)》请在冰豆网上搜索。

CAD原理实验报告Word下载.docx

三点画圆弧"

ClientHeight=5835

ClientLeft=120

ClientTop=450

ClientWidth=8280

LinkTopic="

Form1"

ScaleHeight=5835

ScaleWidth=8280

StartUpPosition=3'

窗口缺省

BeginVB.CommandButtonCommand3

退出"

Height=615

Left=6000

TabIndex=3

Top=4800

Width=1455

End

BeginVB.CommandButtonCommand2

取消"

Left=3360

TabIndex=2

BeginVB.CommandButtonCommand1

画弧"

Left=720

TabIndex=1

BeginVB.PictureBoxPicture1

Height=4335

Left=360

ScaleHeight=4275

ScaleWidth=7515

TabIndex=0

Top=240

Width=7575

End

AttributeVB_Name="

AttributeVB_GlobalNameSpace=False

AttributeVB_Creatable=False

AttributeVB_PredeclaredId=True

AttributeVB_Exposed=False

Privatept()Asmypoint

PrivateSubForm_Load()

ReDimpt

(1)

EndSub

PrivateSubPicture1_MouseDown(ButtonAsInteger,ShiftAsInteger,xAsSingle,yAsSingle)

DimsAsInteger

pt(UBound(pt)).x=x

pt(UBound(pt)).y=y

Picture1.Circle(x,y),15

s=Val(UBound(pt))

SelectCases

Case1

Picture1.Print"

A"

Case2

B"

Case3

C"

EndSelect

IfUBound(pt)>

1Then

Picture1.Line(pt(UBound(pt)-1).x,pt(UBound(pt)-1).y)-(pt(UBound(pt)).x,pt(UBound(pt)).y)

EndIf

ReDimPreservept(UBound(pt)+1)

PrivateSubCommand1_Click()

DimA1,A2,B1,B2,C1,C2AsSingle

DimX0,Y0,r,PIAsDouble

Dimt1,t2,t3AsDouble

DimtAsDouble

A1=pt

(1).x^2+pt

(1).y^2-pt(3).x^2-pt(3).y^2

A2=pt

(2).x^2+pt

(2).y^2-pt(3).x^2-pt(3).y^2

B1=2*pt(3).x-2*pt

(1).x

B2=2*pt(3).x-2*pt

(2).x

C1=2*pt

(1).y-2*pt(3).y

C2=2*pt

(2).y-2*pt(3).y

X0=(A1*C2-A2*C1)/(B2*C1-B1*C2)

Y0=(A1*B2-A2*B1)/(B2*C1-B1*C2)

r=Sqr((pt

(1).x-X0)*(pt

(1).x-X0)+(pt

(1).y-Y0)*(pt

(1).y-Y0))

PI=4*Atn

(1)

t1=Atn((pt

(1).y-Y0)/(pt

(1).x-X0))

Ifpt

(1).x-X0>

0Andpt

(1).y-Y0>

0Then

t1=t1

Else

Ifpt

(1).x-X0<

t1=t1+PI

0Andpt

(1).y-Y0<

t1=t1+2*PI

t2=Atn((pt

(2).y-Y0)/(pt

(2).x-X0))

Ifpt

(2).x-X0>

0Andpt

(2).y-Y0>

t2=t2

Ifpt

(2).x-X0<

t2=t2+PI

0Andpt

(2).y-Y0<

t2=t2+2*PI

Ift1<

t3<

t2Then

Fort=t1Tot2Step0.001

x=X0+r*Cos(t)

y=Y0+r*Sin(t)

Picture1.PSet(x,y)

Nextt

ElseIft2<

t1<

t3Then

ElseIft3<

t2<

t1Then

ElseIft1<

Fort=t2Tot1Step0.001

PrivateSubCommand2_Click()

Picture1.Cls

PrivateSubCommand3_Click()

四实验结果

实验报告

(二)

使用VB软件实现两点画圆弧

2.掌握使用两端点,以及其中一端点切线画圆弧的基本原理和绘制方法;

3.运用VisualBasic6.0软件编写程序实现通过两端点,以及其中一端点切线成功绘制圆弧。

三、实验内容

1、实验原理

已知一圆弧两端点A,B和A端点切线的方向数L

①根据向量的知识,由已知一圆弧两端点A,B和A端点切线的方向数L求出圆心的坐标和半径大小;

②计算在圆心为原点的新坐标系下初始角和终止角的正切值,进而求出对应的角度;

③判断L和半径向量的乘积,若大于0,则为逆时针方向画圆弧,小于0,则为顺时针方向画圆弧;

④根据圆的参数方程表达式,利用VB绘制圆弧。

2、源代码

AutoRedraw=-1'

True

两点加切线画圆弧"

ClientHeight=6810

ClientWidth=8340

ScaleHeight=6810

ScaleWidth=8340

Left=6240

Top=6000

Width=1575

Left=480

Height=5175

ScaleHeight=5115

Top=480

Picture1.Circle(x,y),1

L"

'

曲线在A点处的切线矢量

Picture1.Line(pt

(1).x,pt

(1).y)-(pt(3).x,pt(3).y)

DimX0,Y0,rAsDouble

Dima1,a2,b1,b2,c1,c2AsDouble

Dimt,t1,t2,i,j,k,m,nAsDouble

DimpiAsSingle

pi=4*Atn

(1)

a1=2*pt

(1).x-2*pt

(2).x

a2=pt(3).x-pt

(1).x

b1=2*pt

(1).y-2*pt

(2).y

b2=pt(3).y-pt

(1).y

c1=pt

(1).x^2-pt

(2).x^2+pt

(1).y^2-pt

(2).y^2

c2=(pt

(1).x-pt(3).x)*pt

(1).x+(pt

(1).y-pt(3).y)*pt

(1).y

X0=(b2*c1-b1*c2)/(a1*b2-a2*b1)

Y0=(a1*c2-a2*c1)/(a1*b2-a2*b1)

r=Sqr((pt

(1).x-X0)^2+(pt

(1).y-Y0)^2)

k=(pt(3).y-pt

(1).y)*(pt

(1).x-X0)-(pt(3).x-pt

(1).x)*(pt

(1).y-Y0)

m=pt

(1).x-X0

n=pt

(1).y-Y0

t1=Atn(Abs(n/m))

Ifm>

0Andn>

ElseIfm<

t1=pi-t1

0Andn<

t1=pi+t1

ElseIfm>

t1=2*pi-t1

i=pt

(2).x-X0

j=pt

(2).y-Y0

t2=Atn(Abs(j/i))

Ifi>

0Andj>

ElseIfi<

t2=pi-t2

0Andj<

t2=pi+t2

ElseIfi>

t2=2*pi-t2

Ifk>

Fort=t1Tot2Step0.0001

Else:

t2=t2+2*pi

Ift1>

Fort=t2Tot1Step0.0001

t1=t1+2*pi

四、

实验结果

实验报告(三)

运用VB软件绘制Bezier曲线

1、了解服装CAD中的常用曲线,通过实际操作加以深入认识;

2、了解Bezier曲线的特点,根据Bezier曲线的基本原理,推断出绘制方法并进行操作;

3、运用VisualBasic6.0软件编写程序实现曲线的成功绘制。

设空间有n+1个点P0,P1,P2,……,Pn,则称下列函数所决定的参数曲线为Bezier曲线:

在给定几个点时,可在t

[0,1]区间取一系列值,相应的计算一系列的x(t),y(t),z(t)的值,由此可确定空间曲线上各点的位置,连接后即得该空间曲线。

2、源代码

BeginVB.FormBezier

Bezier曲线"

ClientHeight=7575

ClientLeft=60

ClientWidth=9255

ScaleHeight=7575

ScaleWidth=9255

取消"

Height=495

Left=3840

Top=6600

退出"

Left=6720

画弧"

Left=1080

Height=5655

Left=600

ScaleHeight=5595

ScaleWidth=7995

Width=8055

Bezier"

P0"

P1"

P2"

Case4

P3"

Case5

P4"

Case6

P5"

Case7

P6"

Case8

P7"

Case9

P8"

Case10

P9"

Case11

P10"

Picture1.Line(pt(UBound(pt)-1).x,pt(UBound(pt)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1