跳到主要內容

簡易檢索 / 詳目顯示

研究生: 鄺采婷
Tsai-Ting Kuang
論文名稱: 基於 xDIVA 之可建立物體相依性的 3D 物體 屬性調整即時預覽視覺化工具
指導教授: 鄭永斌
Yung-Pin Cheng
口試委員:
學位類別: 碩士
Master
系所名稱: 資訊電機學院 - 資訊工程學系
Department of Computer Science & Information Engineering
論文出版年: 2021
畢業學年度: 109
語文別: 中文
論文頁數: 50
中文關鍵詞: 視覺化相依性
外文關鍵詞: visualization, dependency
相關次數: 點閱:10下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • xDIVA(extreme Debugging Information Visualization Assistant)為本實驗室持續進行開發的一套基於物件的3D視覺化程式除錯工具,使用者在程式設下中斷點後,xDIVA能夠擷取出該中斷點當下物件型態的程式變數,並透過Visual Programming Language(VPL)的設計,讓使用者自由地拖拉連接擷取出的變數以及xDIVA提供的基本視覺化元件(mapping node)來完成視覺化結果,最終再利用人類視覺感知的優勢,快速地發現程式中有錯誤的地方。
    在xDiva中,使用者可以將程式變數和眾多的視覺化元件自由地排列組合,毫無疑問能夠拼湊出各式各樣的視覺化成果,然而利用2D的視覺化基本元件連線組合達成腦海中所想的3D視覺化結果,對使用者來說必然是一件非常抽象的事,除了需要耗費額外的想像力與記憶力,也很容易因為邏輯思考稍微出了差錯,就導致最終結果跟理想中的結果天差地遠。
    因此,在連接視覺化元件的過程中,若是能夠讓使用者立即預覽當下結果,並且以直接對3D物件進行屬性調整的方式,輔助原先拖拉連線2D元件的功能,那麼對使用者來說,勢必能夠更加直覺地使用xDIVA。
      為了達成這個目的,本論文開發了一個基於場景圖(scene graph)概念的xDIVA視覺化輔助軟體—VM Editor。在大多數的情況下,VM Editor都能夠即時地預覽視覺化物件並且保留它們之間相依的關係,且能夠對此加以編輯並再轉換回xDIVA內原本相互連線的視覺化基本元件。


    xDIVA (extreme Debugging Information Visualization Assistant) is an object-based 3D visualization program debugging tool that is continuously developed by the laboratory. After the user sets a break point in the program, xDIVA can fetch the current object type at the break point Program variables, and through the design of Visual Programming Language (VPL), users can freely map the fetched variables and the basic visualization components provided by xDIVA to complete the visualization results, and finally use the advantages of human visual perception to quickly discover programs There is something wrong in it.
    In xDIVA, users can freely arrange and combine program variables and numerous visualization components. Undoubtedly, they can piece together a variety of visualization results. However, using the mapping of 2D visualization basic components to achieve what they have in mind The desired 3D visualization result must be a very abstract thing for the user. In addition to the extra imagination and memory required, it is also easy to make a slight mistake in logical thinking, which will cause the final result to be far from the ideal result.
    Therefore, in the process of connecting visual components, if the user can immediately preview the current results, and directly adjust the 3D object attributes to assist the original mapping function of the 2D components, then it is bound to be more intuitive for the user Use xDIVA locally.
    In order to achieve this goal, this paper has developed an xDIVA visual aid software-VM Editor based on the concept of scene graphs. In most cases, VM Editor can preview the visual objects in real time and retain their interdependent relationships, and can edit them and then convert them back to the original visual basic elements of the mutual map in xDIVA.

    摘要..................................i Abstract.............................ii 目錄.................................iii 圖目錄................................v 表目錄................................vii 一、緒論...............................1 二、研究背景............................6 2-1 xDIVA..............................6 2-1-1 Gdb Plugin.......................6 2-1-2 Watch Dialog.....................7 2-1-3 Type Mapping Dialog..............8 2-1-4 Evaluator........................9 2-1-5 Viewer..........................10 2-2 場景圖.............................11 2-3 Unity.............................12 2-4 Qt................................13 三、問題描述與分析......................14 3-1 物體間的相依性......................14 3-2 Type Mapping 的操作................15 3-2-1 使用二維元件接出三維物體...........19 3-2-2 較複雜的視覺化....................20 四、解決方法............................21 4-1 VM Editor..........................21 4-1-1 VM建立列表........................23 4-1-2 拉桿式VM屬性調整...................23 4-1-3 代值測試列........................24 4-1-4 可建立物體相依性的客製化變數........26 五、評估................................30 5-1 加入VM Editor的前後差異..............30 5-1-1視覺化過程的時間差異.................32 5-1-2 視覺化過程的操作差異................33 5-2 加入VM Editor後的效益評估.............35 六、結論與未來展望........................37 七、參照.................................38

    [1]Cheng, Y.-P., et al. (2016), "Toward Arbitrary Mapping for Debugging Visualizations," 2016 IEEE/ACM 38th IEEE International Conference on Software Engineering Companion. Austin, TX, USA, IEEE: 605-608.
    [2]"Visual programming language," [Online]. Available: https://en.wikipedia.org/wiki/Visual_programming_language. [Accessed 24 Jun. 2021].
    [3]A. I. Davis and M. R. Keller, "Data Flow Program Graphs," Computer, vol. 15, no. 2, pp. 26-41, Feb. 1982.
    [4]Y.-P. Cheng, J.-F. Chen, M.-C. Chiu, N.-W. Lai and C.-C. Tseng, "xDIVA: A Debugging Visualization System with Composable Visualization Metaphors," in 23rd ACM SIGPLAN Conference on Object-oriented Programming Systems Languages and Applications, Nashville, TN, USA, 2008.
    [5]Y.-C. Hsieh, K.-Y. Liu, T.-T. Kuang and Y.-P. Cheng, "Evaluation of Free Mappings from Program Variables to Visualization."
    [6]"Scene graph" [Online]. Available: https://en.wikipedia.org/wiki/Scene_graph. [Accessed 24 Jun. 2021].
    [7]J. B. Rosenberg, How Debuggers Work: Algorithms, Data Structures, and Architecture, John Wiley & Sons, 1996.
    [8]"GDB: The GNU Project Debugger," [Online]. Available: https://www.gnu.org/software/gdb/. [Accessed 24 Jun. 2021].
    [9]"Python" [Online]. Available: https://www.python.org/. [Accessed 6 Jun. 2021].
    [10]"Unity" [Online]. Available: https://unity.com/. [Accessed 6 Jun. 2021].
    [11]"Qt" [Online]. Available: https://www.qt.io/. [Accessed 24 Jun. 2021]
    [12]"Introducing JSON." [Online] Available: http://www.json.org/. [Accessed 24 Jun. 2021]
    [13]C.-T. Cheng, " Applying ion in Golden Case Debugging by xDIVA "

    QR CODE
    :::