Въз основа на оригинален rect1 (x1, y1, w1, h1) и aизвестен мащабен rect2 (x2, y2, w2, h2) Каква е формулата, за да разберете какъв трансформационен произход е бил използван? Имам нужда от формула за многократна употреба, защото rect2 може да се постави навсякъде.
Казано по друг начин, аз знам границите на малък правоъгълник и искам той да премине към по-голям правоъгълник, като приложи правилните координати на трансформиращия произход (в px или%).
Отговори:
2 за отговор № 1В прост мащаб, съотношенията между разстоянията x1 -> tx и tx -> (x1 + w1), където координатите на трансформиращия се произход "s x е tx, остават същите след скалата.
(tx-x1) / w1 = (tx-x2) / w2
решавайки за tx, получавате:
tx = (w2 / (w2-w1)) * (x1 - (x2 * w1) / w2)
Аналогичната формула ще доведе до това.
(Имайте предвид, че ако използвате перспектива с zтрансформирайте, тогава тази формула ще бъде погрешна и ако не знаете и вашия перспективен произход, тогава аз вярвам, че резултатът ще бъде неопределен, защото ще има безкрайни комбинации от произход на перспектива и трансформиране на произхода, които ще дадат същия резултат. знам перспективен произход, но математиката все още е доста сложна.)