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 | 2756 |
공지 | 제목이 엉망이면 답변달지 않습니다. [1] | 아저씨 | 2014.04.04 | 23846 |
공지 | 순수 캐드 질문은 고캐드로 | 아저씨 | 2013.05.28 | 68628 |
공지 | 질문 답변 게시판을 만들었습니다. | 아저씨 | 2013.02.09 | 74940 |
2026 | 도면 잠금시 레이어 색깔관련해서 여쭙습니다 [1] | 게벨라 | 2015.10.21 | 1 |
2025 | 기존 드림 (라이센스) 관련 문의 [1] | apiscean | 2015.10.23 | 1 |
2024 | 드림플러스 삭제 [1] | khj | 2015.11.13 | 1 |
2023 | 드림을 다운받아 실행만 하려하면 [1] | 로우깁슨 | 2015.11.20 | 1 |
2022 | 드림명령어에 관해서 [1] | 김창주 | 2015.12.03 | 1 |
2021 | cfb 옵션 추가에 대한 질문 [1] | 이기환 | 2015.12.08 | 1 |
2020 | CAD 게시할 때 인쇄범위설정. [1] | su009005 | 2015.12.09 | 1 |
2019 | 한 파일의 여러장 도면을 각장으로 저장하는 방법 [1] | 노지원 | 2016.01.06 | 1 |
2018 | 구입문의!! [1] | 바람바람 | 2016.01.22 | 1 |
2017 | 기존 Dream 사용자입니다, 유료화 관련 문의 드립니다. [1] | 오재오재 | 2016.01.26 | 1 |
2016 | 기존 DREAM 사용자입니다. 유료화 관련 질문입니다. [1] | hks | 2016.01.28 | 1 |
2015 | 드림관련 질문입니다. [1] | 모피 | 2016.01.28 | 1 |
2014 | 기존사용자 다시 질문드립니다. [1] | 이기주 | 2016.01.30 | 1 |
2013 | 캐드 2015에서 메뉴바에서 드림 탭은 설정이 안되나요? [1] | geoffrey | 2016.01.31 | 1 |
2012 | 드림 사용 중 기간 남았는데, 기간만료라고 나와 사용되지 않습니다. [1] | 드리밍 | 2016.02.26 | 1 |
안녕하세요.
VBA를 손 뗀지 너무 오래되어 (7년전?) 사실 잘 기억은 안 납니다.
VBA는 한줄 읽어 처리하는 방식입니다. 같은 한 줄씩 읽는 리습 보다는 빨라도 속도는 유리하지 않습니다.
(기회되면 .NET으로 해보세요)
그리고 1만개 교차를 각각 교차 검색이라면 실제 수행은 1만*1만 = 1억번 수행입니다.
교차 검색이라면 검색 끝난 것을 리스트에서 빼내서 다음 번 교차 검색 안 되도록 순환 횟수를 줄이는 것이 나을 것 같습니다.
아니면 객체를 조금씩 검색하던가 해야겠죠.
그냥 1만개 한번 검색하고 마는 일방향 검색이라면 순환 회수 줄일 수는 없을 것 같습니다.
ip 변수에 값이 없으면 Ubound 에러날테니
ip 변수를 Variant 형으로 하고 If IsEmpty(ip) Then 해서 값이 없으면 건너 뛰게 하는 것이 나을 것 같습니다.
문법이 잘 기억 안 나서 상세 답변은 못드릴 것 같습니다.