Хитрый (ли) Ellipse в MS WORD

Хитрый (ли) Ellipse в MS WORD



2004-08-09 13:14:50 [обр] Владислав [досье]



Я конечно новичок в С#, но этот недостаток я думаю пройдет со временем.



Запустите MS WORD, включите если у вас не включена панель инструментов



рисование. Нарисуйте эллипс. По умолчанию он будет выделен.



Видно что он вписан в прямоугольник. Но если медленно



вести мышку от угла этого прямоугольника к центру эллипса



Мне нужны такие формулы для трапеции, полукруга, параллерограмма и др.



Круг - спецслучай эллипса, обычно пишется как x^2 + y^2 = r^2. С полукругом вы сами разберетесь, я думаю.



Прямоугольный треугольник (катеты a и b на положительных x- и y-осях): x/a + y/b <= 1 && x >= 0 && y >= 0



С произвольно повернутым параллелограммом ABCD ситуация тоже не сильно сложная. Нужно перевести координаты точки в косоугольную систему координат параллелограмма, т.е. выразить радиус-вектор точки r=(x,y) в виде r = A + x'*p + y'*q. где A = радиус-вектор компьютерная помощь в чехове точки A, p=(px,py) - это вектор AB, q=(qx,qy) - вектор AD. (Например, px = x-координата_точки_B - x-координата_точки_A.) В компьютерная помощь в бутово новых координатах неравенства параллелограмма тривиальны: 0 <= x',y' <= 1. Чтобы найти x',y', нужно решить простенькую систему 2 уравнений; несложная формула ответа (формула Крамера) есть в любом справочнике.



Если ABCD - трапеция, AD || BC, то неравенства чуть усложняются. По-прежнему 0 <= y' <=1. 0 <= x'. но вместо x' <= 1 придется взять более сложное неравенство: вроде как, x' <= 1 + y'*((BC-AD)/AD) .




Комментарии

Популярные сообщения