![]()  | 
	
 
  | 
		
			
  | 	
	
	
		
		|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны | 
![]()  | 
	
	
| 
		 | 
	Опции темы | Поиск в этой теме | Опции просмотра | 
| 
		 
			 
			#1  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Доброго времени суток! 
		
	
		
		
		
		
		
	
		
		
	
	
	Никогда не работал с 3D графикой, поэтому такой вопрос: можно ли как-то в OpenGL построить трехмерный объект путем наложения двумерных изображений. Т.е. построить объект послойно. Если нет, то другой вопрос: можно ли попиксельно построить трехмерный объект (опять же послойно)? Исходные данные: либо картинки (двумерные изображения), либо массив 512х512, в каждой ячейке содержится интенсивность цвета.  | 
| 
		 
			 
			#2  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Несколько невнятно сформулирован вопрос. На 3-мерный объект, средствами OpenGL накладывается 2-мерная текстура. При этом можно задать способ наложения: 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	Цитата: 
	
  | 
| 
		 
			 
			#3  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Для того, чтоб было понятно, что требуется сделать, добавил картинку: 
		
	
		
		
		
		
		
	
		
		
	
	
	http://u.pikucha.ru/i7p9N  | 
| 
		 
			 
			#4  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Конечная цель: из набора данных получить вот такую вот штуку: 
		
	
		
		
		
		
		
	
		
		
	
	
	http://www.xrayinspectionservice.com/ смотрите видео. правда пока требуется построить объект и вращать его. Остальные манипуляции - это уже потом)  | 
| 
		 
			 
			#7  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Попиксельно возможно, но рессурсоемко (1 кадр будет отрисовываться минуту а то и больше для данного примера). Здесь вообще-то строится обычный 3D-обьект (векторный) а потом с помощью геометрии делается урезание и т.п 
		
	
		
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#8  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Цитата: 
	
 http://msvitu.com/archive/2007/october/img01-5.jpg построить трехмерный объект, как показано на видео. Причем еще как-то использовать векторное представление. Я вот ума не приложу. Ну с помощью фильтрации я смогу допустим получить границы почти всех объектов на картинке, будут просто контура объекта. Может быть с ними тагда работать? В первом приближении в моем случае допустимо строить изображение и по границам, тогда и точек меньше будет. Хотя попиксельно я тоже думаю, что это трудозатратно, особенно если ПК не особо мощный. Но раз уж люди как-то это делают (видео тому пример), значит реально сделать такую программу. Разработчики подобных ПО своими идеями и разработками не делятся, приходится самому как-то искать решение.  | 
| 
		 
			 
			#9  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 В моей практике эта область новая, поэтому если кто поможет хорошими идеями (которые будут реализованы) или мож кто сталкивался с такой областью и есть наработки, то есть вероятность, что ваши реквизиты будут фигурировать в числе разработчиков. 
		
	
		
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#10  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Вот в DirectX есть такая Volume texture (трёхмерная текстура). Также знаю, что в MatLab'е тоже это возможно. А в TChart разве нет объёма? 
		
	
		
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#11  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Вроде в OpenGL с помощью буффера трафарета можно такую фигню сделать... 
		
	
		
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#12  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Цитата: 
	
 DirectX посмотрю, MatLab - это не то, мне надо свое приложение сделать... а я пока только Delphi знаю.  | 
| 
		 
			 
			#13  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 MatLab не такой уж и сложный. Заводите трёхмерный массив и выбираете "просмотр". 
		
	
		
		
		
		
		
	
		
		
	
	
	А вообще вы представляете, как вы будете просматривать объём? Мы как-то промеривали печку (температура внутри). Я предложил 16 датчиков, расположенных в плоскости. Начальник захотел сразу смотреть весь объём. Я спросил: "Что ты хочешь увидеть"? Если забыть про вращения, то ваши слои вы можете просматривать, просто вызывая очередной bitmap. Или вы хотите ходить как в тумане?  | 
| 
		 
			 
			#14  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 А Вы видео видели, которое я тут выложил? Всё нужно в точности как там. плоскостью пока не нужно рассекать, пока надо как-то построить объемный объект и вращать его. а уже потом дальше двигаться. 
		
	
		
		
		
		
		
	
		
		
	
	
	Плоскость за плоскостью я итак в битмапе вывожу, но по сравнению с тем, что сейчас есть на рынке (я про OpenGL), согласитесь, что это не самая лучшая реализация (это про Canvas и BitMap).  | 
| 
		 
			 
			#15  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Картинки только что посмотрел. Хотя раньше я тоже припомнил, как черепушку сканируют, снимают слой за слоем. Но тут надо где-то посмотреть примеры. Вам, например, слои надо показывать, как они были сформированы или вы хотите резать в любой плоскости? И какой объект: человеческий член (голова, пузо)? 
		
	
		
		
		
		
		
	
		
		
	
	
	 |