![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
Afrodiziac |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 13.5.2007 Репутация: нет Всего: нет |
Общая схема рисования невыпуклого полигона, как говорит MSDN такова:
gluTessCallback(tess, GLU_TESS_BEGIN, glBegin); gluTessCallback(tess, GLU_TESS_VERTEX, glVertex3dv); gluTessCallback(tess, GLU_TESS_END, glEnd); gluTessBeginPolygon(tess, NULL); gluTessBeginContour(tess); gluTessVertex(tess, v, v); . . gluTessEndContour(tess); gluTessEndPolygon(tess); Я попытался приспособить этот код под C# в итоге получил следующее:
То есть Массив_Упорядоченных_Точек_Разреза содержит i полигонов, каждому из которых соответствует j точек, которые я последовательно пытаюсь пихать в полигон... В результате получаю следующие ошибки: GL.gluTessCallback(tess, GL.GLU_TESS_BEGIN, GL.glBegin); - Error 1 The call is ambiguous between the following methods or properties: 'CsGL.OpenGL.GLU.gluTessCallback(CsGL.OpenGL.GLUtesselator, uint, CsGL.OpenGL.GLUtessErrorProc)' and 'CsGL.OpenGL.GLU.gluTessCallback(CsGL.OpenGL.GLUtesselator, uint, CsGL.OpenGL.GLUtessBeginProc)' GL.gluTessCallback(tess, GL.GLU_TESS_VERTEX, GL.glVertex3dv); - Error 2 The best overloaded method match for 'CsGL.OpenGL.GLU.gluTessCallback(CsGL.OpenGL.GLUtesselator, uint, void*)' has some invalid arguments GL.glVertex3dv - Error 3 Argument '3': cannot convert from 'method group' to 'void*' GL.gluTessVertex(tobj, точ, точ); - Error 4 The best overloaded method match for 'CsGL.OpenGL.GL.gluTessVertex(CsGL.OpenGL.GLUtesselator, double[], System.IntPtr)' has some invalid arguments точ (на второй) - Error 5 Argument '3': cannot convert from 'double[]' to 'System.IntPtr' Я так понимаю дело в указателях... Скажите пожалуйста как можно решить такую проблему?.. я нашел пример тут но он тоже не работает... Заранее спасибо. |
|||
|
||||
mr.DUDA |
|
|||
![]() 3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
Пишете на C# ? Пример с koders.com должен работать. Вместо указателей используем делегаты.
-------------------- ![]() |
|||
|
||||
Afrodiziac |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 13.5.2007 Репутация: нет Всего: нет |
Можно по-подробнее про делегаты?.. пример с кодерс.ком но судя по всему для mono а у меня микрософстский вариант... |
|||
|
||||
Afrodiziac |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 13.5.2007 Репутация: нет Всего: нет |
Я вообще не понимаю как применять делегаты в моем случае...
Я же привел конкретный код... функция требует среди прочих параметов указатель на другую void функцию... Такого в C# вообще насколько я знаю организовать нельзя... |
|||
|
||||
Afrodiziac |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 13.5.2007 Репутация: нет Всего: нет |
Пишу так:
на последней строчек на myBegin получаю эррор: Argument '3': cannot convert from 'YAGUDINIGS3.Поверхность.MyBegin' to 'void*' |
|||
|
||||
mr.DUDA |
|
|||
![]() 3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
Странно вообще-то, по идее Tao не должна использовать указатели, хоть в mono, хоть под win.
-------------------- ![]() |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |