Napisano 2 Sierpień 200717 l To znowu ja :) Meczylem sie caly dzien nad zrobieniem funkcji ktora bedzie dzialac jak selekcja "By Angle" bo nie moglem nigdzie takiej funkcji znalezc :/ i kiedy juz prawie mialem skonczone pojawil sie problem bo po sprawdzeniu kata pomiedzy faceami max nie przekazuje wartosci dalej, kiedy proboje sie pozniej do niej odwolac w "if" dostaje "-- No "" fragment kodu: ... if isThere != 0 do ( f2 = polyOp.getFaceNormal obj secFaceSel angle = acos (dot f1 f2) -- tutaj wszystko jest ok ) ) if angle )
Napisano 2 Sierpień 200717 l Nie wiem, jak tam w tym MaxScripcie macie, ale spróbuj zadeklarować zmienną angle poza ciałem tego pierwszego if'a. coś takiego: float angle; //jeśli można w MaxScripcie. Ewentulanie zmienną globalną jakoś zadeklaruj :) if isThere != 0 do { ... angle = acos(...); ... } //tutaj już zmienna angle nie istnieje, [u]jeśli była utworzona w bloku if[/u] if ... { ... } Nie zman MaxScript. To co tutaj piszę odnosi się do języka C, gdzie zmienna utworzona wewnątrz danego bliku { } jest zmienną lokalną istniejącą tylko wewnątrz tego bloku. Czyli już nie istnieje po wyjściu z tego bloku. Możliwe, że w MS jest podobnie.
Napisano 2 Sierpień 200717 l Autor dzieki piotrek, poczytalem, pokombinowalem i doszedlem to tego ze musze zdefiniowac ta zmienna na "poziomie" na ktorym bede sie do niej odwolywal, probowalem definiowac jako globalna ale nie dzialalo ... ( local angle ... ( if isThere != 0 do ( f2 = polyOp.getFaceNormal obj secFaceSel angle = acos (dot f1 f2) ) ) if angle ) moja funkcja jeszcze nie dziala jak powinna ale juz niedlugo... :)
Napisano 19 Sierpień 200717 l T0m3k - czyżbyś robił funkcję o jakiej braku zawsze marudziłem pod nosem? czyli zaznaczanie krawędzi, w zależności czy łączące ją face'y leżą pod wskazanym kątem? Masz jakieś plany, żeby swój twór później opublikować może?... Byłbym ze wszech miar wdzięczny.
Napisano 19 Sierpień 200717 l Autor funkcja nad ktora pracowalem jest odpowiednikiem Select by angle z menu EditPoly i dziala na Polygon'ach, musialem cos takiego napisac bo nie mozna sie do Select by angle odwolywac z MAXScript'u :/ narysuj mnie to o co Ci chodzi z ta selekcja krawedzi w zaleznosci od kata to moze po malych przerobkach moja funkcja spelni Twoje wymagania ;)
Napisano 19 Sierpień 200717 l Chodzi mi dokładnie o funkcję Select by Angle, ale działającą na Edge'ach. (normalnie jest nieaktywna). Jakby tak się chwilę zastanowić, to może być ona niejednoznaczna, ponieważ jeden polygon może się składać z wielu trójkątów, każdy leżący pod nieco innym kątem, bo wiadomo - polygony nie muszą być wcale płaskie. Ale jakby wprowadzić uśrednienie, albo ograniczenie do płaskich polygonów, zawsze by to było lepsze niż nic. A idea jest mniej więcej taka, że czasem chcemy zaznaczyć ostre krawędzie, żeby je zchamferować i w sytuacjach, kiedy nie da się ich zaznaczyć w sposób szybki (ramką albo Edge Loopem), trzeba klikać krawędzie pojedynczo. Jest to możliwe?
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto