nurbs

    0熱度

    2回答

    我需要一些在webGL中渲染NURBS曲面的幫助。 幾天前,我們的教授讓我們用NURBS畫一面旗子併爲它製作動畫。 我們必須使用webGL(並且不能trhee.js ...)。 我不知道如何繼續(儘管我或多或少地知道關於NURBS和鑲嵌的理論)。 任何提示? 聲明:我沒有要求解決方案。這違反了規則,我想自己解決。我只需要指出正確的方向。 在此先感謝

    4熱度

    1回答

    我想在OpenGL中創建一個NurbsSurface。我使用40x48的控制點大小的網格。除此之外,我還創建索引以確定頂點的順序。 這樣,我創建了三角形的面。 只是爲了避免誤解。我有 float[] vertices=x1,y1,z1,x2,y2,z2,x3,y3,z3.......和 float[] indices= 1,6,2,7,3,8.... 現在我不想繪製三角形。我想插入曲面點。我想過n

    2熱度

    1回答

    我的問題是如何獲得位於定義爲給定軸向座標的NURBS曲線的曲線上的點的第二個座標(2D)。我有結矢量,控制點,它們的權重和基礎函數。 我翻看類似的問題(How to find out Y coordinate of specific point in bezier curve in canvas?),但到目前爲止沒有找到一個好的答案。 謝謝, M

    0熱度

    2回答

    我目前正在寫一個程序NURBS surfaces,在那裏你可以在兩個方向(U和V)執行算法的工作。爲了避免代碼重複,我嘗試使用模板,但我沒有經驗使用它們。這裏是我想要做什麼的一個小例子: #include <iostream> enum class Dir { U, V }; struct Foo { unsigned cu, cv; Foo(unsig

    1熱度

    1回答

    我已經通過Pilot3d(http://www.pilot3d.com/NurbSecrets.htm)的「NURBS的骯髒的小祕密」的文章閱讀,並通過表面定位控制點好奇。 它解釋說,每個窗口都具有各自的麪點,但它不會走得太遠,因爲解釋它們是如何發現,如何移動地面控制點轉化爲原來的控制點。如果我不得不猜測,當控制點的貢獻達到最大值時,您將通過查找曲面上的點來找到曲面控制點。不知道有關轉換變回原來的

    1熱度

    1回答

    我正在編程一個GLSL raytrace,並且我做了一些改進,但是從一個視圖來看,我認爲光線追蹤曲面而不是許多三角形會更快,所以我遇到了NURBS。如果我寫下方程(擴展 - >僅,+, - ,*,/,sqrt和square),我看不出有任何方法獲得與射線的交點。 你們中的任何一個人都知道如何光線追蹤2級NURBS? This is my equation (no real NURBS equati

    2熱度

    2回答

    是否可以將(x; y)座標系轉換爲定義控制點和節點? 其主要思想是我試圖開發一個用於空氣風力發電機的python建模工具,並且我想用數學方法將葉片模型化爲曲面,但是定義葉片橫截面的曲線被標準化爲(x; y)座標文件。 現在我已將所有(x; y)點定義爲2D Numpy數組。

    -2熱度

    1回答

    有沒有什麼辦法使用scipy evllute BSpline/Nurbs在給定的點?我搜索只需要給定點,結矢量和樣條線順序的方法。 我找到了評估樣條函數的方法,但我只想評估給定點的基本元素。那麼有人可能知道在這種情況下使用什麼?它甚至有可能嗎? 另一方面,我已經實現了Cox de Boor算法,但由於他的遞歸定義,評估速度很慢。

    0熱度

    1回答

    我想寫一個包含3D曲線(不是曲面)的wavefront .OBJ file。我發現以下鏈接描述瞭如何在.OBJ文件中正確格式化曲線和曲面:http://www.martinreddy.net/gfx/3d/OBJ.spec 有理有理的b樣條曲線沒有例子,並且從文檔中我不清楚結矢量是如何格式在parm u部分。任何幫助,將不勝感激。 相關代碼示例如下。在上面的鏈接,有一個有理B樣條曲面的描述:用於B

    1熱度

    1回答

    我編寫了一個程序來顯示一些壓力測量結果。我想使用NURBS進行細節可視化。所以我將其定位於 enter link description here 我的領域有40x48方格的範圍。所以40行48列。 Z分量(高度)應該是可變的。 但我不明白如何定義 glMap2f(GL_MAP2_VERTEX_3, 0, 1, 3, 4, 0, 1, 12, 4, &ctrlpoints[0][0][0]);