Os medzi krivkami
Vytištěno z: CAD Fórum
Kategorie: Autodesk - stavebnictví, strojírenství, CAD/GIS
Název fóra: AutoCAD
Popis fóra: Otázky kolem aplikací AutoCAD a AutoCAD LT, AutoCAD 360, prohlížečů, DWG a DWF, Design Review, Navisworks, nadstavby, 123D, A360 a cloud Autodesk 360
URL: https://www.cadforum.cz/forum/forum_posts.asp?TID=4259
Datum vytištění: 20.dub.2026 v 03:58
Téma: Os medzi krivkami
Odeslal: Janci
Předmět: Os medzi krivkami
Datum odeslání: 23.bře.2007 v 13:17
|
Dobry den,
moze mi niekto poradit ako urobim os medzi dvoma krivkami ktoré nie su rovnobezné? Dakujem. Janci
|
Odpovědi:
Odeslal: Vladimír Michl
Datum odeslání: 23.bře.2007 v 13:35
|
Základní metoda je v tipu:
http://www.cadforum.cz/cadforum/qaID.asp?tip=5358 - http://www.cadforum.cz/cadforum/qaID.asp?tip=5358
Pokud jsou ony křivky "divočejší", bude potřeba použít např. geometrickou metodu středů tečných kružnic.
------------- Vladimír Michl (moderátor) ARKANCE CZ - https://arkance.world - arkance.world (podpora viz helpdesk.arkance-systems.cz)
|
Odeslal: Janci
Datum odeslání: 23.bře.2007 v 14:10
|
Dakujem za odpoved. Avsak ja by som potreboval urobit os kriviek, ktore su tvorene krivkami SPLINE. Vedeli by ste mi poradit aj s tymto? Neviem ci sa to vobec da urobit.
|
Odeslal: Mantlík
Datum odeslání: 23.bře.2007 v 14:29
spline nebrat
a když už musíte, probíhalo tu několik diskuzí o jejich převodu na křivky
------------- J. Mantlík
|
Odeslal: Ferdinand
Datum odeslání: 23.bře.2007 v 14:42
Já bych to dělal asi takhle (možná že blbě...): 1. Nakreslím Čáru1 z 1. koncového bodu Spline1 do 2. koncového bodu Spline1 2. Nakreslím Čáru2 z 1. koncového bodu Spline2 do 2. koncového bodu Spline2 3. Nakreslím Čáru3 (to by měla být ta OSA1) z polovice Čáry1 do polovice Čáry2 Pokud potřebujete osu symetrie (jsou-li Spline1 a Spline2 "přezrcadlené" dle této OSY2), tak 4. Nakreslím Čáru4 (to by měla být ta OSA2) jako kolmici na Čáru3 a umístím ho tak, aby procházela přes polovici Čáry3

------------- -FerTh-
|
Odeslal: Janci
Datum odeslání: 27.bře.2007 v 10:19
|
Vdaka za odpoved ale ide mi priblizne o toto. Priklad. Mam dve vrstevnice, priklad 115,00 a 116,00, ktore nie su usecky ale krivky (spline, pline... v podstate vsetko ostatne okrem priamok a useciek). V lubovolnom mieste su vzdialene od seba viac v inom mieste menej. Teraz si potrebujem vytvorit vrstevnicu 115,50, co je prakticky (aj ked nie vzdy) os medzi 115,00 a 116,00. A neviem ako. Vsetko je to riesene v rovine, nie v priestore. Je to samozrejme len priklad s tymi vrstevnicami ale nevedel som najst lepsi priklad. Myslel som si ze existuje neaky prikaz, ktory ked kliknem na obe krivky, vytvori mi medzi nimi os. Ale asi som sa mylil. Ak by niekdo vedel ako na to tak prosim poradte. Vdaka. Janci.
|
Odeslal: Ferdinand
Datum odeslání: 27.bře.2007 v 11:13
Aha, takhle... Tak to bych použil příkaz _offset s volbou _T
------------- -FerTh-
|
Odeslal: Mantlík
Datum odeslání: 27.bře.2007 v 12:21
Ferdinand napsal(a):
Aha, takhle... Tak to bych použil příkaz _offset s volbou _T |
Neřekl bych, že to je ono ....
Tím se nedá postihnout ona nepravidelná vzdálenost
Stejně tak se obávám, že to tak snadno nepůjde ani naprogramovat
------------- J. Mantlík
|
Odeslal: Janci
Datum odeslání: 27.bře.2007 v 12:31
|
To s tym OFFSET nie je to co by som od toho cakal. Potreboval by som vlastne interpolaciu medzi tymi krivkami. Lebo urobit si v par bodoch stred medzi krivkami a potom si tie stredy pospajat krivkou sa mi zda nie prilis koser. Zaujimalo by ma ako sa s tymto da vysporiadat. Urcite to uz niekdo potreboval vyriest.
|
Odeslal: m.studenovsky
Datum odeslání: 27.bře.2007 v 12:58
|
Já vidím jako jedinou možnost to udělat růčo - tj. rozdělit oba úseky vrstevnic na stejný počet částí podle pořadované přesnosti a pak proložit spline středy příslušných dvjic bodů.
|
Odeslal: Vladimír Michl
Datum odeslání: 27.bře.2007 v 13:04
Už se to tu před časem řešilo - na BBS (VIP serveru) na to máme LISP utilitu Contour. Algoritmicky to není jednoduchá úloha, lze řešit několika metodami, výsledkem je aproximovaná osová křivka.
------------- Vladimír Michl (moderátor) ARKANCE CZ - https://arkance.world - arkance.world (podpora viz helpdesk.arkance-systems.cz)
|
Odeslal: Mantlík
Datum odeslání: 27.bře.2007 v 13:18
|
Je otázkou, co je "košer" a co není .....
Spíš je důležitější konkrétní případ, o co se jedná, jaký je rozsah a hlavně jakou přesnost potřebujeme ....... Není vždy nutné přesně pracovat s nepřesnými čísly (a přitom se tvářit, že jsou kdovíjak přesná)
Pokud jsem byl postaven před podobný problém, "zbaběle" jsem unikl právě přes "střední body vhodných spojnic mezi křivkami". Kolik jich bylo, záleží i na tvaru těch křivek - a nakonec jsem i onu výslednou "osu" upravil
Ale uznávám, že můj profesní pohled na požadovanou přesnost může být úplně jiný, než pohled strojaře, kterému jde o desetiny či setiny mm (ale tam se zase moc nepravidelných nerovnoběžných linií nevyskytuje)
PS. Vezmu-li to matematicky, tak celý život jsou přibližné aproximace, intuitivní intra- a extra- polace, pohybování se v určitých mezích, žádné přesné výpočty 
------------- J. Mantlík
|
Odeslal: Ferdinand
Datum odeslání: 27.bře.2007 v 13:21
Mantlík napsal(a):
Neřekl bych, že to je ono ....
Tím se nedá postihnout ona nepravidelná vzdálenost ... |
No prvně se buď "střelí" wodoka (_T), anebo se 1.offs.bod stanoví: nakreslit čáru5 z _nearest(1) do _nearest(2) a pak první _offset vést přes _midpoint čáry5 - a pak ty další se _offsetnou přes _endpoint toho předchozího.
------------- -FerTh-
|
Odeslal: Janci
Datum odeslání: 27.bře.2007 v 13:33
|
Medzi VIP nepatrim, software som kupoval na Slovensku v Store, kde na diskusnom fore ako sa hovori"skapal pes", takze sa asi k Lisp Utilite nedostanem. Budem si teda musiet neako poradit. Vdaka za odpovede.
|
Odeslal: pajo5
Datum odeslání: 27.bře.2007 v 13:38
|
Kedze sa jedna o vrstevnice - teda vystup z digitalneho modelu terenu(DMT). Doporucil by som ist cez DMT, nakolko to neni len nejaka os medzi krivkami - ale dalsie vztahy ku krivosti terenu t.j. k dalsim vrstevniciam.
Vsetko sa da naprogramovat - len musite mat jasno v teorii. T.j. ked budete mat matematicku funkciu, ktora vam vypocita polohu bodu, da sa to naprogramovat na celu krivku.
Ked ale zoberiete len dve vrstevnice, bez ohladu na dalsie - mozete spravit povrch medzi dvomi profilmi a potom to rozrezat rovinou vo vyske tej polvrstevnice. Ale bude to len priblizne urcenie jej priebehu, lebo nezohladnite teren za vrstevnicami.
|
Odeslal: Mantlík
Datum odeslání: 27.bře.2007 v 13:43
|
ad. Studenovský:
Nevím, jaké máte se SPLINE zkušenosti Vy, ale s ohledem na editace je to podle mých zkušeností ta nejnemožnější entita, jinak souhlas
ad Ferdinand:
Pokud je každý úsek samostatná křivka, pak možná, ale je-li to dlouhá křivka s mnoha úseky, pak úpravami strávíte víc času, než nakreslením křivky nové
ad. V. Michl.
Na contour.lsp jsem poněkud pozapomněl, ale po přezkoušení už mi došlo, proč asi. Pokud jsou obě křivky "přibližně podobné", pak to dá slušný výsledek. Pokud však jsou "více odlišné", natož různě vykousnuté, tak už je to horší (a nepomůže ani zvýšení přesnosti - to vede jen k většímu počtu úseků)
Někomu to ale může takhle stačit
To však není kritika, jen konstatování - čistě matematicky tuhle problematiku vystihnout opravdu asi jen tak nejde ...
------------- J. Mantlík
|
Odeslal: m.studenovsky
Datum odeslání: 27.bře.2007 v 13:57
|
Získané body nemusím nutně proložit pomocí spline, to už ať si každý zváží.
Problém vidím spíš v definici požadované "osy". Nejkorektnější mi připadá metoda středů, jak bylo diskutováno. Stejný výsledek by mělo poskytnout rozříznutí plochy v půlce, jak navrhl pajo5.
|
Odeslal: Buba
Datum odeslání: 27.bře.2007 v 15:30
|
Dalo by sa to prekresliť do 3D telesa, v polovici vzdialenosti si urobiť rez a premietnuť to do roviny xy.
|
Odeslal: Buba
Datum odeslání: 27.bře.2007 v 15:32
|
Pardón nečítala som celú diskusiu. Pajo5 to už napísal predo mnou.
|
Odeslal: m.studenovsky
Datum odeslání: 27.bře.2007 v 15:35
|
Pravděpodobně by šlo využít i šablonování s následným řezem v půlce. Zatím jsem ale s šablonováním neexperimentoval.
|
|