как узнать принадлежит ли точка к треугольнику (находится ли она в нем) или нет!
Зарание спасибо!!
			
			
					
		Прежде чем задать  вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.
![]() ![]()  | 
	
| kojan | 
                        
			
			  
			
				 Сообщение
					#1				
			 
		 | 
	
| 
        	
        		 Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация:    0           	 | 
       
			
			 как узнать принадлежит ли точка к треугольнику (находится ли она в нем) или нет! 
			
			
					
		Зарание спасибо!!  | 
	
| Ozzя | 
                        
			
			  
			
				 Сообщение
					#2				
			 
		 | 
	
        	
        		![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация:    16           	 | 
       |
| kojan | 
                        
			
			  
			
				 Сообщение
					#3				
			 
		 | 
	
| 
        	
        		 Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация:    0           	 | 
       
			
			 Спасибо конечно, но мне там не все понятно, и тмболее как я понял там написанно на СИ, можно ли написать формулу, алгоритм на дэлфи. 
			
			
					
		Зарание спасибо!  | 
	
| volvo | 
                        
			
			  
			
				 Сообщение
					#4				
			 
		 | 
	
| 
        	
        		 Гость  | 
       |
| kojan | 
                        
			
			  
			
				 Сообщение
					#5				
			 
		 | 
	
| 
        	
        		 Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация:    0           	 | 
       
			
			 к сожадению я не понимаю этот алгоритм, моет ест что-нибудь по проще?  
			
			
					
		 | 
	
| virt | 
                        
			
			  
			
				 Сообщение
					#6				
			 
		 | 
	
        	
        		![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 419 Пол: Мужской Репутация:    6           	 | 
       
			
			program point_in_treug; функция sq_treug вычисляет ориентированную площадь треугольника. Соответственно если точка p вне треугольника то сумма площадей треугольников abp ,apc ,pbc бедет больше площади abc ,иначе площади будут равны. --------------------  | 
	
| volvo | 
                        
			
			  
			
				 Сообщение
					#7				
			 
		 | 
	
| 
        	
        		 Гость  | 
       
			
			 virt, уверен, что это будет работать ВСЕГДА? Я - нет... Доказать? 
			
			
					
		А тебе, kojan: попроще- попроси пользователя проверить на бумаге, и нажать на Y если точка внутри, и на N если точка - снаружи... Что значит "непонятно"? Есть алгоритм, и его нельзя сделать "проще" или "сложнее"... Не понимаешь - бери другое задание...  | 
	
| virt | 
                        
			
			  
			
				 Сообщение
					#8				
			 
		 | 
	
        	
        		![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 419 Пол: Мужской Репутация:    6           	 | 
       
			
			 уверен ,докажи.. 
			
			--------------------  | 
	
| virt | 
                        
			
			  
			
				 Сообщение
					#9				
			 
		 | 
	
        	
        		![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 419 Пол: Мужской Репутация:    6           	 | 
       
			
			 там могут быть ошибки только из-за нехватки точности. 
			
			--------------------  | 
	
| nd2 | 
                        
			
			  
			
				 Сообщение
					#10				
			 
		 | 
	
| 
        	
        		 Гость  | 
       
			
			 А есть графическое решение сей же задачи? 
			
			
					
		Я знаю что оно есть, но не помню его  | 
	
| volvo | 
                        
			
			  
			
				 Сообщение
					#11				
			 
		 | 
	
| 
        	
        		 Гость  | 
       
			
			 Если знаешь - чего спрашиваешь? 
			
			
					
		А теперь вопрос к тебе: Что значит "графическое решение"? Входные/выходные данные для него приведи... "типа, на экране прямая, чуть ниже и левее точка, ..." Все равно тебе придется решать аналитически. Если ты про ВИЗУАЛИЗАЦИЮ - то по предложенному алгоритму ее и напишешь... P.S. Насчет графического решения: ТЫ на бумаге сможешь решить эту задачу графически? Вот когда решишь, тогда и пытайся объяснить это компьютеру...  | 
	
| nd2 | 
                        
			
			  
			
				 Сообщение
					#12				
			 
		 | 
	
| 
        	
        		 Гость  | 
       
			
			 Если знаешь - чего спрашиваешь? А теперь вопрос к тебе: Что значит "графическое решение"? Входные/выходные данные для него приведи... "типа, на экране прямая, чуть ниже и левее точка, ..." Все равно тебе придется решать аналитически. Если ты про ВИЗУАЛИЗАЦИЮ - то по предложенному алгоритму ее и напишешь... P.S. Насчет графического решения: ТЫ на бумаге сможешь решить эту задачу графически? Вот когда решишь, тогда и пытайся объяснить это компьютеру... Я знаю, но не помню, вот премерный алгоритм: Задача решалась методом заливки треугольника, и определением цвета точки, если цвет совпадал с цветом заливки, то точка соответственно лежит, если нет-то нет, только я вот не могу придумать из какой точки заливать треугольник, нужна формула для точки которая точно будет лежать в произвольном треугольнике, т е т пересечения бесиктрис, а как найти её координаты, если имеешь координаты вершин? Вот в этом и весь вопрос!  | 
	
| Гость | 
                        
			
			  
			
				 Сообщение
					#13				
			 
		 | 
	
| 
        	
        		 Гость  | 
       
			
			program point_in_treug; Мона пояснение к сеёму, а то начинающим не особо понятно  | 
	
| Гость | 
                        
			
			  
			
				 Сообщение
					#14				
			 
		 | 
	
| 
        	
        		 Гость  | 
       |
| Hunt666 | 
                        
			
			  
			
				 Сообщение
					#15				
			 
		 | 
	
| 
        	
        		 Гость  | 
       
			
			 эта программа имеет недостаточную точность. попробуйте ввести A1(0,0),A2(1,1),A3(0,1) и координаты точки(1.00001;0) эта программа  будет писать что точка внутри  треугольника а на самом деле она вне его. КТО-НИБУДЬ исправте чтоб было ТОЧНЕЕ 
			
			
					
		 | 
	
| volvo | 
                        
			
			  
			
				 Сообщение
					#16				
			 
		 | 
	
| 
        	
        		 Гость  | 
       
			
			 Цитата(Console) Running Какие проблемы?0 0 1 1 0 1 1.00001 0 point is outside the triangle  | 
	
| Hunt666 | 
                        
			
			  
			
				 Сообщение
					#17				
			 
		 | 
	
| 
        	
        		 Гость  | 
       
			
			 теперь понял в чем у меня были проблемы не надо менять" if abs (s - s1 - s2 - s3)<_eps" на " if abs (s - s1 - s2 - s3)=0" тогда все будет в порядке спс всем очень хороший сайт 
			
			
					
		 | 
	
![]() ![]()  | 
	
 
  | 
		Текстовая версия | 4.11.2025 20:20 |