2021.05.03 11:11
드림플러스 질문은 아래에 남기는 것이 답변이 빠릅니다.
홈페이지 : http://www.dreamcad.net/support/qna/
메일 : email72@nate.com
vba intersectwith를 이용하여 교차되는 object를 찾는데...
대상 객체 수량이 10,000개정도 되다보니 찾는 시간이 오래걸리거나 팅겨지는 현상이 생깁니다.
코딩은 아래와 같습니다.
조언 부탁드리겠습니다.
for each entry in sobj
-
-
ip = rLine.intersectwith(vLine, acExtendnone)
if Ubound(ip) = 2 then
-
-
end if
next
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
공지 | ★ 드림플러스 질문은 메일 또는 홈페이지에 부탁합니다 ★ | 아저씨 | 2017.05.16 | 2775 |
공지 | 제목이 엉망이면 답변달지 않습니다. [1] | 아저씨 | 2014.04.04 | 23854 |
공지 | 순수 캐드 질문은 고캐드로 | 아저씨 | 2013.05.28 | 68641 |
공지 | 질문 답변 게시판을 만들었습니다. | 아저씨 | 2013.02.09 | 74943 |
1519 | 캐드 2008 64bit 드림?? [1] | asdasd | 2016.08.22 | 427 |
1518 | 숨겨질 모듈의 컴파일 오류:commondialog [2] | 초콧릭 | 2016.08.21 | 83 |
1517 | 추가 기능 여쭤봅니다 [1] | 김사원 | 2016.08.19 | 28 |
1516 | 멀티플롯시 일정 도면에서 뜨는 팝업오류 [1] | 11 | 2016.08.19 | 21 |
1515 | 계산기 오류.. 질문드립니다~ [1] | 마음이 | 2016.08.17 | 126 |
1514 | 드림 설치시 질문드립니다. [1] | 새내기공무 | 2016.08.15 | 117 |
1513 | vba 설치 오류 [1] | 피융 | 2016.08.14 | 127 |
1512 | ARE 사용후 REGEN명령어가 자동으로 사용되는 증상 [2] | 구조쟁이 | 2016.08.11 | 83 |
1511 | 채험판관련 [1] | 김성태 | 2016.08.11 | 33 |
1510 | 'are'명령어 런타임 오류 해결방법 문의드립니다! [1] | 김근우 | 2016.08.10 | 33 |
1509 |
프로그램 개발 관련 문의
[2] ![]() | 문의 | 2016.08.10 | 6 |
1508 | 브릭스캐드에서 사용할 수 있는지요? [1] | 랜드짱 | 2016.08.10 | 53 |
1507 | 횡단 경계 작성시 질문드립니다. [1] | santafe4370 | 2016.08.10 | 56 |
1506 | [Dream32bit] 다중플롯 적용시. 축척이 일반플룻과 다르게 적용됩니다. [1] | 이번주로또사셧나요 | 2016.08.09 | 77 |
1505 | 도면 분할시 외부참조 부착이나 결합은 따로 안되나요? [4] | 루이스칸 | 2016.08.08 | 167 |
안녕하세요.
VBA를 손 뗀지 너무 오래되어 (7년전?) 사실 잘 기억은 안 납니다.
VBA는 한줄 읽어 처리하는 방식입니다. 같은 한 줄씩 읽는 리습 보다는 빨라도 속도는 유리하지 않습니다.
(기회되면 .NET으로 해보세요)
그리고 1만개 교차를 각각 교차 검색이라면 실제 수행은 1만*1만 = 1억번 수행입니다.
교차 검색이라면 검색 끝난 것을 리스트에서 빼내서 다음 번 교차 검색 안 되도록 순환 횟수를 줄이는 것이 나을 것 같습니다.
아니면 객체를 조금씩 검색하던가 해야겠죠.
그냥 1만개 한번 검색하고 마는 일방향 검색이라면 순환 회수 줄일 수는 없을 것 같습니다.
ip 변수에 값이 없으면 Ubound 에러날테니
ip 변수를 Variant 형으로 하고 If IsEmpty(ip) Then 해서 값이 없으면 건너 뛰게 하는 것이 나을 것 같습니다.
문법이 잘 기억 안 나서 상세 답변은 못드릴 것 같습니다.