QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
goto3d 说: 版主微信号:caivin811031;还未入三维微信群的小伙伴,速度加
2022-07-04
全站
goto3d 说: 此次SW竞赛获奖名单公布如下,抱歉晚了,版主最近太忙:一等奖:塔山817;二等奖:a9041、飞鱼;三等奖:wx_dfA5IKla、xwj960414、bzlgl、hklecon;请以上各位和版主联系,领取奖金!!!
2022-03-11
查看: 6328|回复: 32
收起左侧

[分享] 已知中心及其上三点,求作椭圆

[复制链接]
发表于 2015-1-14 00:13:04 | 显示全部楼层 |阅读模式

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 gongwen0519 于 2015-1-14 00:21 编辑 8 }: k! i' \- g! G' W

/ A4 L' y! ~; m: T: c+ ]- c$ r本题是继这个http://www.3dportal.cn/discuz/fo ... ead&tid=1449246【作出最长值(不限软件)】帖子而来,该帖椭圆中心可知,同时也可以随便得到椭圆上的三点。# j" I, q# m# z9 H/ a, ?

6 R1 M0 h! x( X8 ^2 s9 i# i) V8 F几何作图作出OX、OY的方向与长度即可,ACAD则画出整个椭圆:! M" X& `: W  k  w8 p9 Q
* x- b+ u! M  `6 _- @0 S  V% C/ L1 C2 p
(这类问题在工程实际中很实用。)
$ Y) ?4 D9 a: E; l! R/ e5 y6 c& s  t
1 ~) P8 r$ q/ S; J5 D tuoyuan.png
3 |# |( v1 G& d4 G) U% c

评分

参与人数 1三维币 +20 收起 理由
woaishuijia + 20 发起技术讨论

查看全部评分

发表于 2015-1-19 12:32:28 | 显示全部楼层
怎么没人回呢?
  1. Sub C3PE()
    / }! u8 b9 l$ b0 A: \+ _% R/ [, |
  2. Dim P0(2) As Double, P1 As Variant, P2 As Variant, P3 As Variant, P4 As Variant
    - v/ \+ j4 m) r6 x
  3. Dim X1 As Double, Y1 As Double, X2 As Double, Y2 As Double, X3 As Double, Y3 As Double3 [7 F- y$ j% F' a4 i8 h
  4. Dim A As Double, B As Double, C As Double, F As Double, Ang As Double, R1 As Double, R2 As Double5 z% p8 H" _, Z! F4 t
  5. On Error GoTo 102 j# z/ m3 A* z$ L1 A6 ]6 [
  6. With ThisDrawing
    5 U# c5 L% G' w& e2 K" Z/ l- L
  7. P1 = .Utility.GetPoint(, "指定中心点")) H/ x7 V/ x, I+ z. C) V) }
  8. P2 = .Utility.GetPoint(, "指定第一点")( a! l; @% E. W( D
  9. P3 = .Utility.GetPoint(, "指定第二点")
    + [4 S( _9 w7 r: n3 r2 \) f2 O6 i5 v
  10. P4 = .Utility.GetPoint(, "指定第三点")
    % W; _. t5 f: U. z$ d( x
  11. X1 = P2(0) - P1(0)
    & M# v! J9 k* T; N7 k! K6 x
  12. Y1 = P2(1) - P1(1)# x8 R7 s; F4 \: c1 A
  13. X2 = P3(0) - P1(0)
    6 ]7 C' Y0 Y) S8 s5 h% e
  14. Y2 = P3(1) - P1(1)
    , A; o2 e' K; _3 \
  15. X3 = P4(0) - P1(0)3 }% K! y" o- u" ~$ Z! E' v% o
  16. Y3 = P4(1) - P1(1)
    2 h* d2 |$ I) m; j8 v
  17. A = (X1 * Y1 - X2 * Y2) * (Y1 ^ 2 - Y3 ^ 2) - (X1 * Y1 - X3 * Y3) * (Y1 ^ 2 - Y2 ^ 2)' _. |) Y2 c0 s/ m& M1 J4 ~  T8 T1 `7 [
  18. If A <> 0 Then, `: c: F# L0 C, P( i( P
  19. B = ((X1 ^ 2 - X2 ^ 2) * (X1 * Y1 - X3 * Y3) - (X1 ^ 2 - X3 ^ 2) * (X1 * Y1 - X2 * Y2)) / A
    2 r2 @1 _. M& d
  20. C = ((X1 ^ 2 - X3 ^ 2) * (Y1 ^ 2 - Y2 ^ 2) - (X1 ^ 2 - X2 ^ 2) * (Y1 ^ 2 - Y3 ^ 2)) / A
    / q  @& G+ p9 ^# k4 O. o7 D
  21. F = -X1 ^ 2 - B * Y1 ^ 2 - C * X1 * Y1
    8 k. y7 m) e  w5 a  R% w5 Y* j! V
  22. If C = 0 Then
    , U+ v7 t( ^  P3 Y0 _# l$ V+ w
  23. If B > 0 And F < 0 Then
    # [2 g* Z  P& I2 H; t) b
  24. Ang = 0
      j6 H  T9 U% ?; [1 ^
  25. R1 = Sqr(-F)
    ! e5 }. x4 m- w" p  o" X+ _6 J
  26. R2 = Sqr(-F / B)6 w, g7 s6 ?* L8 L: {3 D) ^5 U
  27. Else
    3 t5 L! ?' @$ S! R2 |- T
  28. Exit Sub$ s- `( \0 q# z$ Z1 j3 S& S! {) F7 D- i
  29. End If
    " @7 n2 p7 _& Q$ G! C4 H4 G' B
  30. Else2 _) `" P* @: u9 V
  31. If B = 1 Then& _6 |1 U  g) z# C( g( t2 e
  32. If F < 0 And C > -2 And C < 2 Then5 r0 d) B6 n9 t% l" q
  33. Ang = .Utility.AngleToReal(45, acDegrees)# ~% O" |& ]6 U
  34. R1 = Sqr(-2 * F / (2 + C))
    3 {* b! C9 N! `* w, p
  35. R2 = Sqr(-2 * F / (2 - C))
    . E! G5 _! [7 I3 b5 ^
  36. Else1 R7 D0 a( \% Z. t# L
  37. Exit Sub. Y1 f' {  s% S/ n3 o& c
  38. End If: `# M) t7 Z9 S
  39. Else" M+ `, w0 a0 k  F6 P) x/ b
  40. Ang = Atn(C / (1 - B)) / 2# _' m0 F1 ~8 ]5 o% F! M/ f" M
  41. If Ang < 0 Then Ang = Ang + .Utility.AngleToReal(90, acDegrees)/ v+ b) }8 l. U
  42. If B > -1 And F < 0 And C > -(1 + B * Tan(Ang) ^ 2) / Tan(Ang) And C < (B + Tan(Ang) ^ 2) / Tan(Ang) Or _
    # p! W# w, j; w9 O& N( G* ~
  43. B < -1 And F > 0 And C > (B + Tan(Ang) ^ 2) / Tan(Ang) And C < -(1 + B * Tan(Ang) ^ 2) / Tan(Ang) Then
    * b5 u- V/ v' M. j
  44. R2 = -F * (1 + Tan(Ang) ^ 2)
    5 [: Y' X9 {  a! p% m/ b) R/ E
  45. R1 = Sqr(R2 / (1 + B * Tan(Ang) ^ 2 + C * Tan(Ang)))
    7 r  V3 t, o" }5 a; Y! t+ Y
  46. R2 = Sqr(R2 / (B + Tan(Ang) ^ 2 - C * Tan(Ang)))4 ?! F8 S, I5 G1 s
  47. Else0 K- n) J& q$ O/ O1 X
  48. Exit Sub
    1 b* ~( v( T; L
  49. End If6 ]3 V9 |0 K; N( c* q0 @
  50. End If
    7 R# r4 A# B: O3 P! @! [; R
  51. End If
    / T" A3 a- t( D1 T3 p+ _0 C9 t1 n, O
  52. Else
      M5 w6 x8 X! c1 C( ?
  53. Exit Sub5 I" `4 W2 ^" S5 H4 S$ f
  54. End If+ @1 [8 J# @1 t1 c0 @5 H, D( Y( v
  55. If R2 < R1 Then
    9 p& y' a$ G# O7 f% S  ]# a
  56. .ModelSpace.AddEllipse P1, .Utility.PolarPoint(P0, Ang, R1), R2 / R1, ]) D2 ~) Q3 i3 [6 P
  57. Else
    " G8 J3 W/ b1 W' J0 b, D
  58. .ModelSpace.AddEllipse P1, .Utility.PolarPoint(P0, Ang + .Utility.AngleToReal(90, acDegrees), R2), R1 / R21 Y5 f" W0 m7 C$ @0 m6 [2 |2 v
  59. End If
    1 p, t9 W  N; O
  60. End With" i- y8 I  K( i. i! [; u' m  h
  61. 10 End Sub
复制代码

评分

参与人数 1三维币 +10 收起 理由
2005llnn + 10 技术讨论

查看全部评分

发表于 2015-1-19 14:23:08 | 显示全部楼层
已知椭圆的中心点,将3点代入椭圆的一般方程,用解析几何的方法计算即可。
发表于 2015-1-19 19:43:35 | 显示全部楼层
本帖最后由 woaishuijia 于 2015-1-19 23:24 编辑
6 d, ~! ?! X" [% P5 g, k+ H" |- }; ]' \# T
再来个LISP
  1. (defun c:c3pe
    ) Z+ l! m: z  Q0 q
  2.        (/ old p0 p1 p2 p3 p4 x1 y1 x2 y2 x3 y3 a b c f ang r1 r2)
    # d& o; e9 W0 [4 P3 H0 v
  3.   (setvar "CMDECHO" 0)3 i1 W; P- M6 H. Q" `) x
  4.   (setq p0 (list 0 0 0)6 d/ Y! r% G. X* ]  \3 C
  5. p1 (getpoint "\n 指定中心点:")
    + G* X$ |1 q' z& h. j3 d
  6. p2 (getpoint "\n 指定第一点:")
    ) {; ^4 X. g( n
  7. p3 (getpoint "\n 指定第二点:")
    ! y: t3 @$ A" m# }
  8. p4 (getpoint "\n 指定第三点:")
    # l6 J$ m; q0 g
  9. a  (car p1)
    $ X/ Q/ p5 O; g) Y; Z+ ]. [3 l
  10. b  (cadr p1)
    1 S+ K" r' ~8 v( N: Z! Z0 v' w
  11. x1 (- (car p2) a)
    * @4 T* c2 X" q  r, `8 \$ {& w
  12. y1 (- (cadr p2) b)
    2 w4 d5 S# m$ C7 [4 w: n
  13. x2 (- (car p3) a)
    1 t0 u& k* b. x; {/ m, U3 B2 x+ o, N
  14. y2 (- (cadr p3) b)2 j1 f% i' |( |
  15. x3 (- (car p4) a). m. ?; l: S9 p
  16. y3 (- (cadr p4) b): L" R/ l8 N. b6 d' z  Y  K
  17. a  (- (* (- (* x1 y1) (* x2 y2)) (- (* y1 y1) (* y3 y3)))
    & ^, z$ A. Q) a+ [  ~& R8 ]+ x
  18.        (* (- (* x1 y1) (* x3 y3)) (- (* y1 y1) (* y2 y2))): f9 U5 I& y) j6 \* h$ E
  19.     )9 p: g$ p- l# g, r: |1 e
  20.   )5 z! S# T) A$ d, e5 _: R# z
  21.   (if (/= a 0.0)
    7 B5 ^) d# k& u8 L$ V# P1 e* _
  22.     (progn7 E2 S3 ~' C+ l! G9 a7 u, z% E! D
  23.       (setq b (/ (- (* (- (* x1 x1) (* x2 x2)) (- (* x1 y1) (* x3 y3)))+ I( v& Q: B/ X6 j4 f
  24.       (* (- (* x1 x1) (* x3 x3)) (- (* x1 y1) (* x2 y2)))
    3 ^3 {% `( z$ Z7 z$ i
  25.    )' n3 W* _6 X5 N1 Q
  26.    a$ D+ e% y8 ]# L4 N) |. X
  27.        )
    ! @+ y, E! N. I' N
  28.      c (/ (- (* (- (* x1 x1) (* x3 x3)) (- (* y1 y1) (* y2 y2)))% s8 ~: H, p5 {* W: a
  29.       (* (- (* x1 x1) (* x2 x2)) (- (* y1 y1) (* y3 y3)))3 \4 d3 G0 Y' P" O% D1 I/ e# e
  30.    )
    7 h7 ~5 T" n$ B" j; b, M0 m
  31.    a
    7 B1 q, z. ?6 |. {; n) T( N, o( T
  32.        )1 v" d8 f$ b; e2 S' C; j! u
  33.      f (- 0 (* x1 x1) (* b y1 y1) (* c x1 y1))0 p+ y0 ^* G( k
  34.       )7 M5 d) M8 J4 Y2 ]; W1 k: v
  35.       (if (zerop c)7 W# N( [8 g- r/ d2 \' [9 R- w
  36. (if (and (> b 0.0) (< f 0.0))
    ' P4 Z" i7 @. w2 q, s& e$ y
  37.    (setq ang 0.0
    9 l. U1 y8 {- L0 ?/ g% E, M5 L1 o
  38.   r1  (sqrt (- 0 f))
    % b) M7 r$ R( ^: h! }
  39.   r2  (sqrt (- 0 (/ f b)))
    ; d1 z' |  S, s: m
  40.    )- v: l1 {( q9 V$ N2 h
  41. )/ j1 |: C! x9 b/ o5 Z: F
  42. (progn$ Y  x( W9 C) C5 _+ @
  43.    (if (= b 1.0)% M0 E( Y+ r$ P- K4 b' n
  44.      (if (and (< f 0.0) (> c -2.0) (< c 2.0))
    - R: k6 z; b/ A* i2 H
  45.        (setq ang (/ pi 4)
    4 }0 {; L; {' ^" W& R( E% v
  46.       r1 (sqrt (* -2 (/ f (+ 2 c))))3 ^1 d. P( m6 ~0 O
  47.       r2 (sqrt (* -2 (/ f (- 2 c))))1 E. I: D" _! j' ?6 {# ?
  48.        )
    # [/ }$ _# \& S* X& [" ?! g/ M
  49.      )2 t9 n2 g% _. _
  50.      (progn
    : k' l* M* U6 q* F& M
  51.        (setq ang (/ (atan (/ c (- 1 b)))
    * X/ i& ]' a3 P, Z' y
  52.       2& g. [% o- H, {) G) G6 L" i% w5 L
  53.    )- b+ d% }% _+ C1 Z
  54.        )2 U" k4 N) e* |
  55.        (if (< ang 0.0). m  Q; c& z( r+ P
  56.   (setq ang (+ ang (/ pi 2)))
    + P! V# `1 I* D, ]. U
  57.        )
    * f" B- S3 O( {! ~
  58.        (setq a (/ (sin ang) (cos ang)))
    4 Z% z  }- V  t( k1 j
  59.        (if (or (and (> b -1.0)4 ]! r. k% F3 R3 t; S
  60.       (< f 0.0); |& N0 R1 e3 Q5 D* p) y+ `
  61.       (> c (/ (- -1.0 (* b (* a a))) a))
    2 s; k, L" }- I$ l! r
  62.       (< c (/ (+ b (* a a)) a))
    " {: u4 q9 P8 C1 \
  63.         )
    0 D( J; i* u/ Z" a  p: l9 _
  64.         (and (< b -1.0)/ g) A+ ?  {7 S8 [
  65.       (> f 0.0)+ P$ L3 f: \0 ?* Y( Z& ]
  66.       (> c (/ (+ b (* a a)) a))
    1 |, ?6 I$ T" S9 r
  67.       (< c (/ (- -1.0 (* b (* a a))) a)), d4 s1 [- }' ^9 f
  68.         )
    7 C4 M& `  U) J9 v
  69.     )/ [, m8 O3 N9 Z' J" T2 c
  70.   (setq r2 (* -1 f (1+ (* a a)))
    $ x0 o2 p2 D  o& T# l* S
  71.         r1 (sqrt (/ r2 (+ 1 (* b a a) (* c a))))
    1 g; c: l- m& v, Y3 F  x0 A* a
  72.         r2 (sqrt (/ r2 (- (+ b (* a a)) (* c a)))), D8 A& ^* d6 f1 P9 F
  73.   )
    ; t, B% s) [$ f2 h+ l5 G
  74.        )
    # C6 h4 q$ G# N( K' r
  75.      )
    # c3 r9 e0 S: H
  76.    )
    $ q2 j( w" S* S9 e8 J( L5 T
  77. )
    . I, _8 h. m1 @3 u- [* C+ y
  78.       )0 O5 d6 e6 C+ U- O* u; w- P
  79.     )$ v6 Z3 ^7 S  G" G
  80.   )$ g( l4 s6 q. }! L2 K* m* t* |; u) g
  81.   (if r1
    & u6 Q; z9 p" g6 ^" z9 [
  82.     (progn
    + I0 j$ b4 ^9 ~% ^3 d) q) C
  83.       (setq old (getvar "OSMODE"))% l* i8 N4 U0 h5 M
  84.       (setvar "OSMODE" 0)/ v* _" y' ^7 ^- L  r# ^2 Q
  85.       (command "ellipse"
    + n4 t6 r! i& m0 _
  86.         "c"2 V' i/ b: s5 e: t7 W) F  G
  87.         p1
    2 U4 h4 q6 |7 g- f
  88.         (polar p1 ang r1)
    - T/ `; f- a% O7 ?: {- p# X" U( @
  89.         r2
    ! J$ `$ e) ?' Y; Z9 G5 U- x
  90.       )) s1 L! s0 o+ u- ^* X
  91.       (setvar "OSMODE" old)2 L3 y9 ~" e# m* i/ x5 E0 ?
  92.     )
    / O3 g* q  N: J) E- d1 b% J
  93.   )
    $ D6 i( P& }; O. `4 O* s% M5 h+ g* e
  94.   (princ)9 \( E3 E# O" M
  95. )
复制代码

点评

这是什么?代码?用于CAD?  详情 回复 发表于 2018-3-15 10:26

评分

参与人数 1三维币 +10 收起 理由
2005llnn + 10 技术讨论

查看全部评分

 楼主| 发表于 2015-1-19 20:34:06 | 显示全部楼层
tangcarlos3d 发表于 2015-1-19 14:23 static/image/common/back.gif
8 m9 b8 R$ Z$ v: M" ^已知椭圆的中心点,将3点代入椭圆的一般方程,用解析几何的方法计算即可。
& U' p- b7 L* Y+ i  E
可以不解方程,有纯几何方法解的(指能作出椭圆的长短轴的方向与长度)。
 楼主| 发表于 2015-1-19 20:45:01 | 显示全部楼层
本帖最后由 gongwen0519 于 2015-1-19 20:55 编辑
. x# d: m) n- ?4 _- z
woaishuijia 发表于 2015-1-19 19:43 static/image/common/back.gif$ k" q% O& b6 z9 P
再来个LISP

3 f2 }; h. B9 b! q' i2 e. b
9 h( O2 }8 Q' Lwoaishuijia版主,劳驾您将两个程序的文本文件打个压缩包吧(三维网论坛的网页代码复制每行后都带乱码,手工复制或清理太费时间),谢谢。。
! @) d" L! R  ~# i2 m  M. n1 G# n: H& x: j
看来大家和曾经的楼主一样,看到圆锥二次曲线就生威蹙眉。% f! j* B2 T7 s6 x7 q

; ~3 S$ C4 P" v" t. G如果用尺寸约束与驱动,把椭圆约束到这些参数上也是可以的呀。9 Q9 x& L) s7 }/ V4 I! c4 T! i

) R1 C. L7 m3 j& k4 G# v8 i$ \谢谢woaishuijia版主的VBA与lsp,今后工作中我就用您的程序了。4 x* _8 C& F) V, l
: ]0 J5 D6 A+ L  v) y/ Z
为增加活跃一下的气氛,我还是稍后整理公布一下过程不是“很”复杂的几何作法吧。
发表于 2015-1-19 22:02:32 | 显示全部楼层
能给出长轴和短轴的公式吗?和水平角度的计算
发表于 2015-1-19 23:10:51 | 显示全部楼层
本帖最后由 woaishuijia 于 2015-1-19 23:25 编辑
7 ^3 K8 Y. a6 ~/ m3 V% F
gongwen0519 发表于 2015-1-19 20:45 http://www.3dportal.cn/discuz/static/image/common/back.gif
) a: k5 ~/ Y- _; ]3 Qwoaishuijia版主,劳驾您将两个程序的文本文件打个压缩包吧(三维网论坛的网页代码复制每行后都带乱码, ...
9 E* ?& n% P4 ~5 C5 U0 {9 A
9 z, l. |8 k5 \2 G$ U7 e5 R
C3PE.rar (4.96 KB, 下载次数: 24)
 楼主| 发表于 2015-1-20 00:04:33 | 显示全部楼层
lisc2000 发表于 2015-1-19 22:02 static/image/common/back.gif
! I6 p, o* b' c+ J' r能给出长轴和短轴的公式吗?和水平角度的计算

! p% K/ H0 V4 g8 g, l已经整理好一种几何解法:
9 j' S6 y7 n- ~* `! I" Z, ^1 V! s' c% W: `
前面的说明:, {# |/ K& h: y, K' I1 H

4 E% Q3 F, q6 B2 o! v d001.png
% u8 y- V: `8 f* c7 C' R( F2 W5 g9 D' p
作图过程:$ i' h& ?3 H# S+ [1 ?

# B) P9 s/ _6 v d002.png ; N$ W$ x! T- G0 ?: v5 h

; g$ O9 R' W' n7 X d003.png
% h) Q8 G7 Y0 D# P' T下图是OP的作法:# ]+ ?; x/ y& j0 W- I& f( L
d004.png % b/ S3 ~7 q% k/ m
最后完成椭圆的长短半轴:
7 C0 T9 G4 X3 W5 d0 _& O2 W
% U" e' k9 n6 K, Y d005.png
3 U$ g: z: M8 S: N+ w2 h2 p" Q" T

: n+ _% ^- A5 g

评分

参与人数 1三维币 +30 收起 理由
2005llnn + 30 技术分享

查看全部评分

 楼主| 发表于 2015-1-20 00:11:41 | 显示全部楼层
woaishuijia 发表于 2015-1-19 23:10 static/image/common/back.gif
+ }8 C' G0 J; Y# {. O- d0 C5 d
谢谢,收藏了。
发表于 2015-1-20 13:46:59 | 显示全部楼层
学习了。     
发表于 2018-3-15 10:26:44 | 显示全部楼层
woaishuijia 发表于 2015-1-19 19:43
4 \) v2 f2 Z' R再来个LISP
" b1 m9 k- O! D& X+ w
这是什么?代码?用于CAD?

点评

是的。AutoCAD是一款极为优秀的二次开发平台软件,支持多种(比如C、.net、LISP、VBA、脚本)编程工具(语言)。用户可用其创制属于自己的个性化命令。一些常见的国产CAD软件(如PCCAD、开目、机械工程师等)就是在  详情 回复 发表于 2018-3-15 17:31
发表于 2018-3-15 17:31:39 | 显示全部楼层
小草包 发表于 2018-3-15 10:26. Q" I) {5 U- y! u6 `2 w
这是什么?代码?用于CAD?
  A& P6 m: j- `( V. D
是的。AutoCAD是一款极为优秀的二次开发平台软件,支持多种(比如C、.net、LISP、VBA、脚本)编程工具(语言)。用户可用其创制属于自己的个性化命令。一些常见的国产CAD软件(如PCCAD、开目、机械工程师等)就是在这个平台上二次开发的绘图软件产品。本帖的二楼、四楼就是针对楼主所提问题,分别用VBA和LISP编写的“已知中心及其上三点作椭圆”命令的程序代码。八楼附件是包含程序的工程文件,在AutoCAD绘图界面的“工具”菜单下使用相应的命令加载工程文件后,就可以像平时使用CAD命令画直线、画圆一样,使用这个自制命令,根据已知中心及其上三点画出椭圆了。
发表于 2018-3-15 20:02:56 | 显示全部楼层
TOPSOLID
- h' V7 X3 `7 U# H$ R& n用中心点加圆上两点即可

点评

做不到。结果不唯一。再增加一个条件才可以,比如轴方向或椭圆上的另一个点。  详情 回复 发表于 2018-3-16 05:11
发表于 2018-3-16 05:11:36 | 显示全部楼层
JCKFC1997 发表于 2018-3-15 20:02! U" C8 v( @  J4 g( V
TOPSOLID
3 b2 w  `! ]$ ]- [: ~用中心点加圆上两点即可

3 E. [3 U9 ~/ N9 G5 [做不到。结果不唯一。再增加一个条件才可以,比如轴方向或椭圆上的另一个点。
发表于 2018-3-22 17:16:50 | 显示全部楼层
可以吼出来啊
/ g8 S, E5 ?0 F2 z

可以

可以

点评

已经说过了,根据椭圆中心和其上两点,不能确定一个椭圆。如果只有这三个条件,可以画出无数个椭圆。你画了其中的一个,说明不了任何问题。 下图是根据相同的条件随便画的几个,自己看。  详情 回复 发表于 2018-3-27 00:41
发表于 2018-3-27 00:41:25 | 显示全部楼层
本帖最后由 woaishuijia 于 2018-3-27 00:42 编辑
+ u' C1 H! m( k. C; c. B* t
JCKFC1997 发表于 2018-3-22 17:16
; V1 O* a* W: j3 n( B4 z+ `可以吼出来啊

4 Z* S" y9 ?* @) R; b已经说过了,根据椭圆中心和其上两点,不能确定一个椭圆。如果只有这三个条件,可以画出无数个椭圆。你画了其中的一个,说明不了任何问题。, G5 A/ R3 ]1 _, J5 `7 F  W5 [# u
下图是根据相同的条件随便画的几个,自己看。
& b# p4 d3 x4 m; X/ O2 L. e8 B" I8 X1 [% ?" _
捕获.PNG
发表于 2018-11-11 09:32:10 | 显示全部楼层
下载个程序用用。
发表于 2018-12-3 09:59:14 | 显示全部楼层
woaishuijia 发表于 2015-1-19 12:32
' D, W1 h/ R# x/ b$ {怎么没人回呢?
, n1 U; p& v) v" h
请教一下版主,现在CAD编程方面,学习LISP和VBA各有什么优缺点?初学想学习编程,想询问一下版主学习哪个更合适一些?

点评

简单说,VBA是微软的东西,是建立在VB(可视化Basic,一种面向WINDOWS系统的图形化编程工具)基础上的面向对象的编程工具,通过图形界面和代码操纵CAD的内核。它的编程界面很友好,特别是程序中需要使用用户窗口或对  详情 回复 发表于 2018-12-5 23:23
发表于 2018-12-5 23:23:13 | 显示全部楼层
kuangben8 发表于 2018-12-3 09:59
' e. r- Z* x, R( V" }3 S请教一下版主,现在CAD编程方面,学习LISP和VBA各有什么优缺点?初学想学习编程,想询问一下版主学习哪个 ...

- J' j+ r% Y2 P9 [简单说,VBA是微软的东西,是建立在VB(可视化Basic,一种面向WINDOWS系统的图形化编程工具)基础上的面向对象的编程工具,通过图形界面和代码操纵CAD的内核。它的编程界面很友好,特别是程序中需要使用用户窗口或对话框时很方便。但它是使用上一代WINDOWS核心技术(.COM)的,现在微软已经停止了对它的更新。LISP是一种“表语言”,属于比较古老的东西了,流行于当年没有WINDOWS,甚至没有操作系统的年代。只有纯粹的代码,没有图形界面。但它是欧得克公司自己的产权(收购的),相信只要AutoCAD软件还活着,这种语言就死不了。LISP又分为LISP和VLISP,LISP是直接调用CAD前台命令,编程过程和画图过程很相似。VLISP增加了对CAD内核的调用——相当于间接使用VBA,但没有VBA的图形界面。对于能够熟练使用CAD画图,但没有编程基础的童鞋来说,LISP更容易上手,可以先学它。如果需要,以后再学VBA或VLISP(二者是相通的)。

评分

参与人数 1三维币 +5 收起 理由
2005llnn + 5 感谢您解答了求助的问题。

查看全部评分

发表于 2018-12-8 18:04:39 | 显示全部楼层
woaishuijia 发表于 2018-12-5 23:23
  ~3 C6 h5 y" a: B2 `简单说,VBA是微软的东西,是建立在VB(可视化Basic,一种面向WINDOWS系统的图形化编程工具)基础上的面 ...
# w3 ^- a* z0 S
好的,感谢版主大大。。。我初学了EXCEL的编程,感觉还可以,所以就想结合CAD编程,尝试在借助excel中的数据,自动完成在CAD中的绘图。不知道这个想法是否可以实现?

点评

EXCEL的编程就是VBA啊,如果你已经会了EXCEL的VBA,又能够熟练使用CAD画图,那使用VBA做CAD的二次开发编程简直易如反掌。而且VBA的一大优势就是在支持VBA的软件之间交换数据,所以你说的“借助excel中的数据,自动完  详情 回复 发表于 2018-12-8 20:33
发表于 2018-12-8 20:33:32 | 显示全部楼层
kuangben8 发表于 2018-12-8 18:04
$ y' T+ f2 z/ m" x/ H好的,感谢版主大大。。。我初学了EXCEL的编程,感觉还可以,所以就想结合CAD编程,尝试在借助excel中的 ...

$ P; v/ ?/ e- O6 tEXCEL的编程就是VBA啊,如果你已经会了EXCEL的VBA,又能够熟练使用CAD画图,那使用VBA做CAD的二次开发编程简直易如反掌。而且VBA的一大优势就是在支持VBA的软件之间交换数据,所以你说的“借助excel中的数据,自动完成在CAD中的绘图”就是自然而然的事。
发表于 2018-12-8 21:17:27 | 显示全部楼层
woaishuijia 发表于 2018-12-8 20:33! g6 f: _; _" M1 @7 B, O
EXCEL的编程就是VBA啊,如果你已经会了EXCEL的VBA,又能够熟练使用CAD画图,那使用VBA做CAD的二次开发编 ...
; `0 W" F$ p# e
好的,感谢版主大大!给了我很大的信心!
发表于 2019-1-29 12:43:15 | 显示全部楼层
woaishuijia 发表于 2018-12-8 20:33
: x: {) o* @4 d$ D/ @. LEXCEL的编程就是VBA啊,如果你已经会了EXCEL的VBA,又能够熟练使用CAD画图,那使用VBA做CAD的二次开发编 ...

" f9 J) l, U, S1 {, _) s/ N7 @老师啊!CAD的VBA没有录制宏功能啊?而且外安装的VBA模块帮助文件全是英文版的!和OFFICE的VBA相比较,麻烦多了!没有录制宏,我该怎么学习CAD的VBA呢?

点评

把邮箱给我  详情 回复 发表于 2019-1-30 22:13
发表于 2019-1-30 22:13:09 | 显示全部楼层
kuangben8 发表于 2019-1-29 12:435 [  M; k2 y9 X, a7 s
老师啊!CAD的VBA没有录制宏功能啊?而且外安装的VBA模块帮助文件全是英文版的!和OFFICE的VBA相比较,麻 ...

6 B- x# E" G2 \& ^. @把邮箱给我
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备13008828号-1 )

快速回复 返回顶部 返回列表