明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1005|回复: 6

[.net群] 2013-05-03 明经 AutoCAD.NetApi (2474812) 群聊记录:jig属性块时.在原点和鼠标点位置都出现了属性块

 关闭 [复制链接]
发表于 2013-5-3 09:33:27 | 显示全部楼层 |阅读模式
疯狂青蛙 09:33:27
jig属性块时.在原点和鼠标点位置都出现了属性块
如何解决
 楼主| 发表于 2013-5-3 11:06:11 | 显示全部楼层
[C#]有心人问道 11:06:11
请教大家一个算法问题。
有N个数组,要用这些数组中的成员中的数据与其他数组中的数据做对比,请问怎么做最快?
数组中的成员都是线,
list llist=new list();
要用 llist 中的线与其他llist中的线作对比。

比如有N个数组
foreach(list in lists )
{
    list 与  lists 中的其他数组作对比。
}

请问有没有方法替换上面这种循环?
[C#]有心人问道 11:07:55
注意的是,一条线的起点值并不一定是另一条线起点值,可能是它的终点值。
[C#]羽翼 11:12:34
比线干嘛
[C#]有心人问道 11:13:16
....
作一个统计。
疯狂青蛙 11:14:12
这个数组先处理下
然后用Dictionary来是不是简单些
处理成起点X坐标不大于终点X坐标
[C#]有心人问道 11:15:23
可以再详细一点吗?
疯狂青蛙 11:16:18
其实list就可以了.
list.has(xxxx)
[C#]羽翼 11:17:19
你是想比较两个线  是否相连?相交? 平行?
[C#]有心人问道 11:17:32
是这样的,这线是我自己定义的。
它有名称,有其他属性。所以我不知道怎么用has来判断
疯狂青蛙 11:18:21
那自己继承集合接口写一个LineCollection
[C#]有心人问道 11:18:23
比两条线的坐标是否相同,不管线一的起点等于线二的终点还是起点...
疯狂青蛙 11:18:28
has方法也能重写
疯狂青蛙 11:19:15
他不想每次都这么写几层循环,对吧
[C#]羽翼 11:19:24
给你个思路
[C#]有心人问道 11:19:32
羽翼,你跑题了。
[C#]羽翼 11:19:41
好吧 哈哈
[C#]有心人问道 11:19:44
其实对比的时间用不了多少。
疯狂青蛙 11:19:48
不光是坐标,还有什么属性
[C#]羽翼 11:20:01
哦哦  我以为他比坐标呢
疯狂青蛙 11:20:08
把这些属性都封装到一个类里面
[C#]有心人问道 11:20:10
只要坐标相同,就认为是一致的。
[qqimg]oldimg/{AACD8EFE-5290-FA69-843C-606E1E232AA7}.jpg[/qqimg]
疯狂青蛙 11:20:52
你也做管道?
[C#]有心人问道 11:21:00
是啊,
[沪C#]无情剑客 11:21:22
对CPU来说,纯比较算不了什么。CPU每秒运算的速度是很快的
[C#]羽翼 11:21:23
可以将List  数组中的 起始点坐标  按照X做一个排序,将数组从小到大重组,   然后对比,之后小的就直接跳出 进入下一数组循环,可以节省点时间
[C#]有心人问道 11:21:46
但是我算了一个小时了。
[沪C#]无情剑客 11:22:01
那就是代码有问题
[C#]羽翼 11:22:50
之前处理云数据的时候 我经常遇到这种状况
疯狂青蛙 11:22:51
毕竟有宿主
疯狂青蛙(275171906)  9:33:25
jig属性块时.在原点和鼠标点位置都出现了属性块
疯狂青蛙(275171906)  9:33:27
如何解决
[C#]羽翼 11:23:10
有心人的  循环对比算法  有问题
出现了大量重复
疯狂青蛙 11:23:35
建议你读一下 算法导论这本书
[C#]羽翼 11:23:49
你可以撇开EACH 这个函数  自己写一个对比
疯狂青蛙 11:23:52
对排序 比较 查找 和常见的问题都有介绍
[C#]羽翼 11:24:04
比EACH高效
[C#]有心人问道 11:24:43
我是想在线集合类中加一个事件,一个INDEX 和一条线字段。当一条线赋予给线字段后,线的事件马上得到回应,自己与这条线去做对比。然后把自己的ID给INDEX
你们觉得可以吗?
所以我不想用太多循环啊、
 楼主| 发表于 2013-5-3 11:40:04 | 显示全部楼层
[沪C#]无情剑客 11:40:04
没有明白你的意思
[C#]有心人问道 11:48:42
就是把一个要作对比的值赋予给一个集合的字段,然后集合中的成员自己去与他对比,
[沪C#]无情剑客 11:57:59
不是很理解。但根据现有理解用Dictionary或者hashtable就可以解决问题了
[C#]飞诗 12:02:07
 楼主| 发表于 2013-5-3 14:02:14 | 显示全部楼层
[C#]羽翼 14:02:14
同等数据量,纯C#程序,和调用CAD的c#程序   前者快多了
这直接比坐标不就行了
怀念啊  我改行了
 楼主| 发表于 2013-5-3 18:14:19 | 显示全部楼层
[C#-菜鸟]梧桐 18:14:19
cannot convert parameter 4 from 'class CArray' to 'class CArray'
 楼主| 发表于 2013-5-3 18:25:27 | 显示全部楼层
[C#-菜鸟]梧桐 18:25:27
知道了,函数定义是应该是&Scales
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-6 03:50 , Processed in 0.158147 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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