Beispiel #1
0
        /// <summary>
        ///  하나의 뷰를 선택하여 그 안에 있는 모든 모델핸들값을 가져오는 구문
        /// </summary>
        /// <param name="sel">0은 Subview</param>
        /// <param name="highlight">선택되서 캡쳐된 부분 하이라이팅 할 여부</param>
        public void Select_By_View(int sel, bool highlighting = true)
        {
            KcsElementHandle   viewhandle = new KcsElementHandle();
            KcsCaptureRegion2D region     = new KcsCaptureRegion2D();

            kcs_draft.HighlightOff(0);
            KcsElementHandle [] capturehandles = new KcsElementHandle[] {};
            int resp = 0;

            try{
                resp = kcs_ui.PointPlanarReq("원하는 뷰에 속하는 아이템을 찍으면 뷰가 선택됩니다.", p1);
                if (resp == kcs_util.Reject())
                {
                    return;
                }
                else
                {
                    viewhandle = kcs_draft.ViewIdentify(p1);
                    KcsRectangle2D temp_area = kcs_draft.ViewRestrictionAreaGet(viewhandle);


                    region.SetInside();
                    region.SetRectangle(temp_area);
                    region.SetNoCut();
                    capturehandles = this.DetermineCapture(sel);
                }
            }catch (Exception ee)
            {
                kcs_ui.MessageConfirm("캡쳐된 모델이 없습니다.");
            }
            finally{
                if (resp == kcs_util.Reject())
                {
                    if (highlighting == true)
                    {
                        kcs_draft.ElementHighlight(capturehandles);
                        kcs_ui.MessageNoConfirm("캡쳐된 Element 수량:" + capturehandles.Count().ToString());
                    }
                    handler = capturehandles.ToList();
                    kcs_draft.HighlightOff(0);
                    kcs_draft.ElementHighlight(capturehandles);
                }
                else
                {
                    kcs_draft.ElementHighlight(capturehandles);
                }
            }
        }