|
Jak rozłożyć okręgi na okręgu? |
| Autor |
Wiadomość |
XnIcRaM
Bywalec

Dołączył: 31 Sty 2009 Posty: 22 Skąd: nikąd
|
Wysłany: 16 Lipiec 2012, 23:43 Jak rozłożyć okręgi na okręgu?
|
|
|
| Mam jeden duży okrąg i kilkanaście małych, chciałbym te małe rozłożyć równomiernie w tym dużym tak aby każdy mały miał jeden punkt wspólny (styczny) z dużym, czy można to zrobić jakoś 'automagicznie', gdyż próby wykonania tego 'ręcznie' są (przynajmniej w moim przypadku) mało precyzyjne? |
|
|
|
 |
Wojtek Kowalews
Znawca ketjow

Pomógł: 13 razy Wiek: 68 Dołączył: 05 Cze 2006 Posty: 151 Skąd: Kalisz
|
Wysłany: 17 Lipiec 2012, 06:29
|
|
|
| Z automatu to polecam rStones Rhinestone Designer Suite z macromonster. Ręcznie to metamorfoza i precyzyjna zabawa. |
|
|
|
 |
XnIcRaM
Bywalec

Dołączył: 31 Sty 2009 Posty: 22 Skąd: nikąd
|
Wysłany: 17 Lipiec 2012, 16:07
|
|
|
| 50$ to raczej sporo na jak na prywatny użytek od czasu do czasu. |
|
|
|
 |
Wojtek Kowalews
Znawca ketjow

Pomógł: 13 razy Wiek: 68 Dołączył: 05 Cze 2006 Posty: 151 Skąd: Kalisz
|
Wysłany: 17 Lipiec 2012, 17:50
|
|
|
| Punkt widzenia zależy od punktu siedzenia. Trzeba przemyśleć temat czasu spędzonego nad projektem do spodziewanego zysku. Raz wydasz ~200 zł, a za każdy przerobiony reflektor na diody do BMW dostaniesz niezła kasę. |
|
|
|
 |
XnIcRaM
Bywalec

Dołączył: 31 Sty 2009 Posty: 22 Skąd: nikąd
|
Wysłany: 17 Lipiec 2012, 19:20
|
|
|
| Ja chcę tylko zrobić córce zegar ścienny do jej pokoju, za darmo nie za kase :) |
|
|
|
 |
Wojtek Kowalews
Znawca ketjow

Pomógł: 13 razy Wiek: 68 Dołączył: 05 Cze 2006 Posty: 151 Skąd: Kalisz
|
Wysłany: 17 Lipiec 2012, 21:27
|
|
|
| Sorki. Załącz koncepcję. Określ średnicę zewnętrzną, ilość kół wewnętrznych i ich średnicę. Spróbuję pomóc. Jeżeli nie chcesz zamieszczać tego na forum to prześlij na moją pocztę. |
|
|
|
 |
XnIcRaM
Bywalec

Dołączył: 31 Sty 2009 Posty: 22 Skąd: nikąd
|
Wysłany: 17 Lipiec 2012, 23:50
|
|
|
| Spoko, myślę że jakoś sobie poradzę, ogólnie mam jeszcze trochę czasu i póki co narysowałem okrąg zewnętrzny i kilka małych i kombinowałem z ich rozmieszczeniem, po stwierdzeniu że trochę mi się z tym zejdzie postanowiłem sprawdzić czy nie da się ich jakoś magicznie rozmieścić ale skoro nie ma takiej możliwości to się trochę pobawię. Chyba że sobie z tym nie poradzę wtedy chętnie skorzystam z pomocy kolegi :) |
|
|
|
 |
Wojtek Kowalews
Znawca ketjow

Pomógł: 13 razy Wiek: 68 Dołączył: 05 Cze 2006 Posty: 151 Skąd: Kalisz
|
Wysłany: 18 Lipiec 2012, 10:04
|
|
|
Próbowałbym tak:
1.narysowałbym koło o zadanym promieniu i ustawił współrzędne X=0;Y=0 w centrum okręgu
2.jeżeli wewnętrzne koła mają ten sam promień to funkcją contur narysowałbym koło wewnętrzne o promieniu mniejszym o promień koła wewnętrznego
3.po dwukrotnym kliknięciu w linijkę wybrałbym Guidelines-Guides i przez współrzędne xy wprowadziłbym prowadnice co 30°
4.z włączonymi dynamicznymi prowadnicami umieszczałbym koła wewnętrzne zgodnie z rysunkiem.
ZEGAR.cdr
|
Pobierz Plik ściągnięto 272 raz(y) 23.66 KB |
|
|
|
|
 |
chezare


Pomógł: 402 razy Dołączył: 24 Gru 2010 Posty: 4551 Skąd: Grodzisk Mazowiecki
|
Wysłany: 18 Lipiec 2012, 11:21
|
|
|
| Najprościej będzie chyba tak jak w załączniku? |
|
|
|
 |
maroQ
Doradca

Pomógł: 16 razy Wiek: 41 Dołączył: 08 Lut 2011 Posty: 117 Skąd: Kalisz
|
Wysłany: 18 Lipiec 2012, 12:02
|
|
|
| chezare napisał/a: | | Najprościej będzie |
Zrobić to z makra:
| Kod: | Type WSP
x As Double
y As Double
End Type
Sub DrawLines(ByVal step As Double)
Dim s As Shape
Dim sr As New ShapeRange
Dim A As WSP
Dim n As Node
Dim i As Double
If ActiveSelectionRange.Shapes.Count = 1 Then
Set s = ActiveShape.Duplicate
s.ConvertToCurves
A.x = s.PositionX + s.SizeWidth / 2
A.y = s.PositionY - s.SizeHeight / 2
For i = 1 - step To 0 Step -step
s.Curve.SubPaths(1).AddNodeAt i, cdrRelativeSegmentOffset
Next i
For Each n In s.Curve.Nodes
sr.Add ActiveLayer.CreateCurveSegment(A.x, A.y, n.PositionX, n.PositionY)
Next n
s.Delete
Set s = sr.Combine
s.Name = "#!_Pomocnicze"
End If
End Sub
Sub Make()
Call DrawLines(1 / 60)
End Sub |
Makro umieszczamy w nowym module np. w GlobalMacros prawy przycisk myszy na GlobalMacros i dalej Insert i dalej Module.
Ważne by type znalazło się nad innymi "makrami" bo inaczej to nie zadziała.
Rysujemy sobie kółko i zaznaczamy je, po czym wywołujemy Make i mamy ładną podziałkę zegara. Teraz wystarczy w środku umieścić inne kółko i wybrać narzędzie usuwania segmentów wirtualnych.
No i mamy kreski minut zgodnie z upodobaniami :D
Wygenerowane kreski można potraktować jako pomocnicze. Jako parametr DrawLines zawsze trzeba podawać ułamek z podstawą parzystą np. 1/4, 1/8 itp. inaczej to nie zadziała właściwie.
Można tak ciachać dowolny kształt zamknięty, ale najlepiej jeśli jest on symetryczny. Dla niesymetrycznych też fajnie to wygląda dla dużych mianowników, choć generowanie trochę trwa. |
|
|
|
 |
XnIcRaM
Bywalec

Dołączył: 31 Sty 2009 Posty: 22 Skąd: nikąd
|
Wysłany: 18 Lipiec 2012, 20:37
|
|
|
Widać jak mało wiem jeszcze o Corelu :) Ostatecznie zrobiłem tak jak w ostatnim poście proponuje kolega Wojtek z tą różnicą iż ja zamiast prowadnic to narysowałem prostą przechodzącą przez środek okręgu skopiowałem 30x przy czym każdą kolejną kopię obracałem o 6° tak że ostatecznie miałem okrąg podzielony na 60 części dorysowałem pomocniczy okrąg o wspólnym środku i przeciągałem małe kółka (minutowe) na przecięcie okręgu pomocniczego z prostą.
Jeszcze tylko muszę tym makrem się pobawić (nigdy jeszcze nie korzystałem z makr w Corelu)
Dziękuję wszystkim za pomoc :) |
|
|
|
 |
|
|