明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 10360|回复: 14

幻灯片或矢量线切换显示问题

  [复制链接]
发表于 2012-4-11 01:49:31 | 显示全部楼层 |阅读模式
请问如下图所示:
左边第1个勾对应幻灯片右1的矩形
左边第2个勾对应灯片片右2的矩形
...

如果将左边的第1个勾去掉,则幻灯片右1的矩形消失
如果将左边的第2个勾去掉,则幻灯片右2的矩形消失
...

我想了2个方案,好像都不好用
1,用矢量线绘制,但是好像又行不通,当左1勾上已画右1矩形,左2勾上时画右2的矩形时,会冲掉左1画的矩形?
2,写N多代码+N张幻灯片

请问,有没有该如何实现呢?

本帖子中包含更多资源

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

x
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2012-4-11 07:14:30 | 显示全部楼层
点左边勾的同时右边幻灯片刷新,并判断所有勾的状态,根据各勾的状态再用矢量线绘制。
 楼主| 发表于 2012-4-11 08:17:35 | 显示全部楼层
本帖最后由 啵浪鼓 于 2012-4-11 08:34 编辑

判断的语句不好写啊,if 1勾  2勾 3勾...太多可能了额,,,

还有矢量线在对话框的坐标如何获得?

院长有没有实例参考一下呢?

点评

一句if对应画一条线,太多了有什么问题么?  发表于 2012-4-11 08:22
发表于 2012-4-11 08:55:56 | 显示全部楼层
两种都可以吧,
个人认为第一种要好一点,根据左边状态开关对应的矢量代码刷新,
楼主是个追求完美的人,我做这个时连个图片都懒得用,
是同行自然能明白。
发表于 2012-4-11 09:03:47 | 显示全部楼层
啵浪鼓 发表于 2012-4-11 08:17
判断的语句不好写啊,if 1勾  2勾 3勾...太多可能了额,,,

还有矢量线在对话框的坐标如何获得?

点击每个选项时重绘IMAGE,执行如下示例函数即可
(defun draw ()
(START_IMAGE “IMG”) ;_ 开始绘图像
(if (= "1" (get_tile "key1")) (vector_image ...)) ;_ 绘第一个线
(if (= "1" (get_tile "key2")) (vector_image ...)) ;_ 绘第二个线
...
(END_IMAGE)
)
 楼主| 发表于 2012-4-11 16:03:00 | 显示全部楼层
Lisper 发表于 2012-4-11 09:03
点击每个选项时重绘IMAGE,执行如下示例函数即可
(defun draw ()
(START_IMAGE “IMG”) ;_ 开始绘图像 ...

谢谢各位的指点。

目前做出来的程序不能绘制矢量线,不知何故,请帮忙指点!

  (defun draw ()
    (setq width  (dimx_tile "key1")
          height (dimy_tile "key1")
    )
    (start_image "key1") ;_ 开始绘图像
    (if (= "1" (get_tile "d1"))  ;_ 绘第一个线
      (progn
        (vector_image 0 0 0 height 1)     ; 1 = AutoCAD 红色
        (vector_image 0 height width height 1)
        (vector_image width height width 0 1)
        (vector_image width 0 0 0 1)
      )
    )
    (if (= "1" (get_tile "d2"))  ;_ 绘第二个线
      (progn
        (vector_image 0 0 0 height 2)     ; 2 = AutoCAD 黄色
        (vector_image 0 height width height 2)
        (vector_image width height width 0 2)
        (vector_image width 0 0 0 2)
      )
    )
    (end_image)
  )

(action_tile "d1" "(draw)")
(action_tile "d2" "(draw)")

本帖子中包含更多资源

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

x

点评

你清楚你程序vector_image 画的线在IMAGE上什么地方么?全画在边框上了!  发表于 2012-4-11 16:22
 楼主| 发表于 2012-4-11 18:47:31 | 显示全部楼层
本帖最后由 啵浪鼓 于 2012-4-11 18:48 编辑

(vector_image x1 y1 x2 y2 color)
本函数在当前激活的对话框图像控件(由 start_image 函数打开)上从点 (x1,y1) 到点 (x2,y2) 显示一个矢量线。原点 (0,0) 表示图像控件的左上角,可以调用 dimx_tile 和 dimy_tile 函数来获取其右下角的坐标。

左上角为起始点 (0,0),dimx_tile得到 width 432  height 360,
怎么在这区域画矢量线就是不出来呢?

迷茫中...

本帖子中包含更多资源

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

x
发表于 2012-4-11 19:30:54 来自手机 | 显示全部楼层
本帖最后由 Gu_xl 于 2012-4-11 21:38 编辑
啵浪鼓 发表于 2012-4-11 18:47
(vector_image x1 y1 x2 y2 color)
本函数在当前激活的对话框图像控件(由 start_image 函数打开)上从点  ...

按你计算的坐标在Cad上画画试试看!
 楼主| 发表于 2012-4-12 12:39:09 | 显示全部楼层
(vector_image 0 0 0 -50 1)
(vector_image 0 0 0 50 1)

如上,即是从0,0点往左或加画条直线,即使这样还是没法在控件上显示矢量线,这个程序应该还是缺少什么函数吧,导致无法显示,还是坐标点取的不对?

点评

-50已经在图像外了!  发表于 2012-4-12 14:29
I 服了You!  发表于 2012-4-12 14:28
发表于 2012-4-12 13:38:46 | 显示全部楼层
啵浪鼓 发表于 2012-4-11 16:03
谢谢各位的指点。

目前做出来的程序不能绘制矢量线,不知何故,请帮忙指点!

矢量线 函数好像是grdraw
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-7-22 05:01 , Processed in 0.211904 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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