±±¾©Ê¯ÓÍ»¯¹¤Ñ§Ôº2026ÄêÑо¿ÉúÕÐÉú½ÓÊÕµ÷¼Á¹«¸æ
²é¿´: 845  |  »Ø¸´: 2

Shine.Z

Ìú³æ (СÓÐÃûÆø)

[ÇóÖú] ArcGlobe¶þ´Î¿ª·¢£¬Êó±êʰȡµãת»»³ÉµØÀí×ø±ê´íÎó

µÚÒ»´Î·¢Ìû£¬²»ÖªµÀÓÐʲôҪעÒâµÄ£¬ÓÐʲô²»×ãÇë´ó¼Ò¶à¶àÖ¸½Ì¡£
    C#+ArcEngine Globe¶þ´Î¿ª·¢£¬Í¨¹ýÊó±êʰȡµãת»»µÃµ½µØÀí×ø±ê¡£¿´°ïÖúÎĵµºÍ±ðÈË»ù±¾¶¼ÊÇÕâô×öµÄ£¬Ö±½ÓÀûÓÃWindowToGeographicº¯Êý¾ÍÄÜ´Ó¶þάÆÁÄ»×ø±êת»»µ½Èýά¿Õ¼ä´óµØ×ø±ê£¬ÎҵĴúÂëÈçÏ£º   
    IGlobeViewUtil globeViewUtil = axGlobeControl1.GlobeCamera as IGlobeViewUtil;
    IGlobeDisplay pGlobeDisplay = axGlobeControl1.GlobeDisplay;
    double dLon = 0;
    double dLat = 0;
    double dAlt = 0;
    globeViewUtil.WindowToGeographic(pGlobeDisplay, pGlobeDisplay.ActiveViewer, e.x, e.y,
        true, out dLon, out dLat, out dAlt);//ÓÉÆÁÄ»»ñÈ¡¾­Î³¶ÈºÍ¸ß³Ì
    ÕâÀïÎÒÓеã¶ùÒÉÎÊ¡£Êó±êÔÚÆÁÄ»Éϵã»÷¿É»ñȡһ¸ö¶þÎ¬×ø±ê£¬Ó³Éäµ½Èýά³¡¾°ÖÐÆäʵ¾Í´Ó¹Û²ìµãµ½ÆÁÄ»×ø±êµÄÒ»ÌõÉäÏߣ¬×ª»»µ½Èýά¿Õ¼ä²»¿ÉÄÜÊÇÒ»¸öÌØ¶¨µÄµã£¬³ý·Ç¸ø¶¨Éî¶ÈÖµ»òÕß˵ÄÜÑϸñÏÞ¶¨ÊÓÏß³¤¶ÈµÄÌõ¼þ¡£ÎÒ²»ÖªµÀÕâ¸öº¯ÊýÊÇÔõôȷ¶¨µÄ£¬²ÂÏë¿ÉÄÜÊǵõ½ÊÓÏߺÍÈýάµØÐεĽ»µã£¬Ò²¾ÍÊÇ˵ʰȡµÄÕâ¸öµãÔÚµØÃæÉÏ¡£
    µ«ÊÇÎÒÏÖÔÚ×öÕâÒ»²½µÄʱºò£¬ÖÜΧµÄµØÐθ߶ȶ¼ÔÚ100Ã××óÓÒ£¬Êó±êʰȡµÄµãµØÀí×ø±êµÄ¸ß¶ÈÓÐÆß°Ù¶àÃ×£¬Ê¹µÃÏàÓ¦µÄ¾­Î³¶ÈÒ²³ÉÁË´íÎóµÄ¡£ÈçÏÂͼËùʾ£º

    eÊÇÊó±êµãÈ¡µÄλÖ㨸ú×ÙÁËÏÂÓ¦¸ÃûÎÊÌ⣩£¬×ª»»³öÀ´µÄÓ¦¸ÃÊÇPµÄλÖ㬵«ÊÇʵ¼ÊÉϵõ½ÁËP'µÄλÖã¬ÓÉÓڸ߶Ȳ»¶Ô£¬Ê¹µÃ¾­Î³¶ÈÒ²ÓкܴóµÄÆ«²î¡£Ö±¹ÛµÄ¸ÐÊܾÍÊÇÊÓÏß³¤¶È²»¶Ô£¬»¹Ã»ÓÐÑÓÉìµ½ºÍµØÃæµÄ½»µãÉÏ¡£ÖмäÖ»ÓÃÁËÒ»¸öº¯Êý£¬Ò»Ö±²»ÖªµÀΪʲô»á³öÏÖÕâ¸öÎÊÌâ¡£ÊDz»ÊÇÓÐʲôµØ·½ÐèÒªÉèÖ㿲ËÄñÇóÖ¸µ¼£¬ÏÈллÁË¡£
»Ø¸´´ËÂ¥
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

huohe2009

Í­³æ (СÓÐÃûÆø)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

¸Ðл²ÎÓ룬ӦÖúÖ¸Êý +1
û´í¡£ÔÚÈýά¿Õ¼äÉÏÊ°È¡×ø±ê±¾À´¾Í²»×¼È·
2Â¥2013-11-12 21:58:55
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

huohe2009

Í­³æ (СÓÐÃûÆø)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

(1) WindowToGeographic() function was introduced for a fast and rough estimate of a geographic location that can then be used, for example, for accumulating the geographic extent of the 3D view as defined by a window; or as a faster (and rougher) substitute for standard Locate() when doing picking.
(2) It appears that a safe mode from within an AfterDraw() handler, is 'useZBufferValue = true' -- because otherwise Locate() is used and will draw the whole frame again in our 'internal' transformation and scaling for precision.
(3) Regarding precision:
(a) when useZBufferValue is true, we directly read from the Z-Buffer the depth component and then use gluUnProject() to get x, y, z coordinates. The precision of Z-Buffer depth values varies with "how far you zoom in or out" and is not that precise anyway.
(b) when useZBufferValue is false, we use Locate() which uses a 'Pick-Render' pass to calculate the intersection with the mesh at the current LOD as defined by the view -- so again the precision varies with the current view parameters.
- Note that the precision of the altitude (i.e. elevation) component can be improved by additionally calling IGlobeDisplay::GetSurfaceElevation(); with bGetMaxResolution argument set to true.
(4) Currently we are not using a "mesh-ray intersection algorithm " which would work for us only when no elevation data is present -- the case that can probably be easily calculated on the client side anyway.
3Â¥2013-11-12 22:02:11
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ Shine.Z µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 321Çóµ÷¼Á +6 è±Óñ~~ 2026-03-25 7/350 2026-03-28 17:48 by è±Óñ~~
[¿¼ÑÐ] ²ÄÁÏÓ뻯¹¤£¨0856£©304ÇóBÇøµ÷¼Á +8 Çñgl 2026-03-27 8/400 2026-03-28 12:42 by ÌÆãå¶ù
[¿¼ÑÐ] Ò»Ö¾Ô¸ÄϾ©º½¿Õº½Ìì´óѧ²ÄÁÏѧ˶Çóµ÷¼Á +3 @taotao 2026-03-28 3/150 2026-03-28 10:26 by JourneyLucky
[¿¼ÑÐ] 081200-314 +3 LILIQQ 2026-03-27 4/200 2026-03-28 09:41 by ±£»¤µØÇòÄãÎÒ×öÆ
[¿¼ÑÐ] 085701»·¾³¹¤³ÌÇóµ÷¼Á +9 ¶à¾ÃÉϿΠ2026-03-27 9/450 2026-03-28 03:58 by fmesaito
[¿¼ÑÐ] 330Ò»Ö¾Ô¸Öйúº£Ñó´óѧ »¯Ñ§¹¤³Ì 085602 ÓжÁ²©ÒâÔ¸ Çóµ÷¼Á +3 wywy.. 2026-03-27 4/200 2026-03-28 03:32 by fmesaito
[¿¼ÑÐ] »¯Ñ§µ÷¼Á +4 °®³Ô·¬ÇѵÄÐñ 2026-03-24 5/250 2026-03-27 17:50 by kiokin
[¿¼ÑÐ] 272Çóµ÷¼Á +7 ½Å»¬µÄÊØ·¨¹«Ãñ 2026-03-27 7/350 2026-03-27 17:23 by laoshidan
[¿¼ÑÐ] 07»¯Ñ§280·ÖÇóµ÷¼Á +10 722865 2026-03-23 10/500 2026-03-27 15:51 by Plutoqq
[¿¼ÑÐ] ¸´ÊÔµ÷¼Á£¬Ò»Ö¾Ô¸ÄÏÅ©083200ʳƷ¿ÆÑ§Ó빤³Ì +5 XQTJZ 2026-03-26 5/250 2026-03-27 14:49 by ¿ñìÅÂóµ±µ±
[¿¼ÑÐ] 348Çóµ÷¼Á +4 СÀÁ³æ²»ÀÁÁË 2026-03-27 5/250 2026-03-27 12:47 by ¹û¹ûÂèßä
[¿¼ÑÐ] ²ÄÁÏÇóµ÷¼Á +5 .m.. 2026-03-25 5/250 2026-03-27 11:08 by ²»³Ôô~µÄ؈
[˶²©¼ÒÔ°] ±±¾©ÁÖÒµ´óѧ˶µ¼ÕÐÉú¹ã¸æ +6 kongweilin 2026-03-26 8/400 2026-03-27 10:18 by FF_16
[¿¼ÑÐ] Çóµ÷¼Á£¬Ò»Ö¾Ô¸ ÄϾ©º½¿Õº½Ìì´óѧ´óѧ £¬080500²ÄÁÏ¿ÆÑ§Ó빤³Ìѧ˶ +4 @taotao 2026-03-26 5/250 2026-03-27 08:10 by hypershenger
[¿¼ÑÐ] 081200-11408-276ѧ˶Çóµ÷¼Á +4 ´Þwj 2026-03-26 4/200 2026-03-27 08:04 by chemisry
[¿¼ÑÐ] 325Çóµ÷¼Á +5 Àî¼Îͼ¡¤S¡¤Â· 2026-03-23 5/250 2026-03-27 00:42 by wxiongid
[¿¼ÑÐ] 07»¯Ñ§303Çóµ÷¼Á +5 î£08 2026-03-25 5/250 2026-03-25 22:46 by 418490947
[¿¼ÑÐ] ²ÄÁÏÓ뻯¹¤304ÇóBÇøµ÷¼Á +3 Çñgl 2026-03-25 3/150 2026-03-25 19:03 by Ainin_
[¿¼ÑÐ] 284Çóµ÷¼Á +15 Zhao anqi 2026-03-22 15/750 2026-03-25 12:51 by wht0531
[¿¼ÑÐ] BÇø¿¼Ñе÷¼Á +4 yqdszhdap£­ 2026-03-22 5/250 2026-03-25 08:51 by baoball
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û