ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

АналитичСскиС повСрхности. 
Π˜Π½ΠΆΠ΅Π½Π΅Ρ€Π½Π°Ρ 3d-ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Π°Ρ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ повСрхности ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ Π΄Π΅Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠΉ ΠΎΡ€Ρ‚ΠΎΠ³ΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΡˆΡŒΡΠ΅Ρ‚ΠΊΠΈ (рис. 25.6, Π°, 25.7, Π°). Π‘Π΅Ρ‚ΠΊΡƒ Ρ€Π°ΡΡ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‚, ΡΠΆΠΈΠΌΠ°ΡŽΡ‚, ΠΈΠ·Π³ΠΈΠ±Π°ΡŽΡ‚ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ сС ΡƒΠ·Π»ΠΎΠ²Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ приняли ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π·Π°Π΄Π°Π²Π°Π΅ΠΌΠΎΠ΅ функциями fx, fy, fz. РасчСты ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ ΡƒΠ·Π»ΠΎΠ² ΠΈ Π²ΡΠ΅ построСния Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ автоматичСски ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ 25.1. Π‘ΠΎΠ·Π΄Π°Π½Π½ΡƒΡŽ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, построив Π΅Π΅ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Π΅… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

АналитичСскиС повСрхности. Π˜Π½ΠΆΠ΅Π½Π΅Ρ€Π½Π°Ρ 3d-ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Π°Ρ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

AutoCAD позволяСт [10, 12] ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ, Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ…, Ρƒ, z — ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, опрСдСляСмыС аналитичСскими выраТСниями:

АналитичСскиС повСрхности. Π˜Π½ΠΆΠ΅Π½Π΅Ρ€Π½Π°Ρ 3d-ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Π°Ρ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°.

Π³Π΄cfx, fy, f2 — Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ нСзависимых ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ, v.

Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ повСрхности ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ Π΄Π΅Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠΉ ΠΎΡ€Ρ‚ΠΎΠ³ΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΡˆΡŒΡΠ΅Ρ‚ΠΊΠΈ (рис. 25.6, Π°, 25.7, Π°). Π‘Π΅Ρ‚ΠΊΡƒ Ρ€Π°ΡΡ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‚, ΡΠΆΠΈΠΌΠ°ΡŽΡ‚, ΠΈΠ·Π³ΠΈΠ±Π°ΡŽΡ‚ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ сС ΡƒΠ·Π»ΠΎΠ²Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ приняли ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π·Π°Π΄Π°Π²Π°Π΅ΠΌΠΎΠ΅ функциями fx, fy, fz. РасчСты ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ ΡƒΠ·Π»ΠΎΠ² ΠΈ Π²ΡΠ΅ построСния Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ автоматичСски ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ 25.1. Π‘ΠΎΠ·Π΄Π°Π½Π½ΡƒΡŽ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, построив Π΅Π΅ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Π΅ сСчСния, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π² ΡΠΎΡΡ‚Π°Π² solid-ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π΅Ρ‚Π°Π»ΠΈ ΠΈΠ»ΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Π‘Ρ…Π΅ΠΌΠ° построСния повСрхности z =f(x, Ρƒ).

Рис. 25.6. Π‘Ρ…Π΅ΠΌΠ° построСния повСрхности z =f (x, Ρƒ):

Π° — координатная сСтка ΠΈ, ^-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²; Π± — Π³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ повСрхности.

Π‘Ρ…Π΅ΠΌΠ° построСния парамСтричСской повСрхности.

Рис. 25.7. Π‘Ρ…Π΅ΠΌΠ° построСния парамСтричСской повСрхности:

Π° — координатная сСтка ΠΈ, ^-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²; Π± — Π³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π―Π²Π½ΠΎΠ΅ ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ричСскоС Π·Π°Π΄Π°Π½ΠΈΠ΅ повСрхности Если Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ/*, fy, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ, Π·Π°Π΄Π°Π½Ρ‹ равСнствами Ρ… = ΠΈ, Ρƒ = v, Ρ‚ΠΎ Ρ‚Ρ€Π΅Ρ‚ΡŒΡ функция —}Π³ становится явно Π·Π°Π΄Π°Π½Π½Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ Π΄Π²ΡƒΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…Π³ =/(*, #)β€’ Π‘Π΅Ρ‚ΠΊΠ° ΠΈ,-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² прСобразуСтся Π² Ρ€Π°Π²Π½ΡƒΡŽ Π΅ΠΉ ΡΠ΅Ρ‚ΠΊΡƒ ^ «/-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².

НапримСр, гипСрболичСский ΠΏΠ°Ρ€Π°Π±ΠΎΠ»ΠΎΠΈΠ΄ ΠΏΡ€ΠΈ Ρ… = ΠΈ. Ρƒ = v опрСдСляСтся ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅ΠΌ: z = Π° — (Ρ… — Π°)? (Ρƒ — Π°). ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ (рис. 25.6, Π²) Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΠΏΡ€ΠΈ Π° = 2. ΠžΡ‚ΡΠ΅ΠΊ повСрхности ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ значСниями: Xmin = Fmin = 1; Xmax = Π£Ρ‚Π°Ρ… = 3. Π”ΠΈΡΠΊΡ€Π΅Ρ‚Π½ΠΎΡΡ‚ΡŒ каркаса, Ρ‚. Π΅. количСство рядов ΠΏΠΈ ΠΈ ΡΡ‚Ρ€ΠΎΠΊ nv сСти, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° значСниями ΠΏΠΈ = nv= 10.

ΠŸΡ€ΠΈ парамСтричСском Π·Π°Π΄Π°Π½ΠΈΠΈ повСрхности всС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π΅Π΅ Ρ‚ΠΎΡ‡Π΅ΠΊ ΡΠ²Π»ΡΡŽΡ‚ΡΡ функциями ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ, v. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ являСтся ΡΠ²ΠΎΠ»ΡŒΠ²Π΅Π½Ρ‚Π½Ρ‹ΠΉ Π³Π΅Π»ΠΈΠΊΠΎΠΈΠ΄, Ρ€Π°Π½Π΅Π΅ рассмотрСнный ΠΊΠ°ΠΊ кинСматичСская ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ (см. ΠΏ. 20.4). БСйчас (см. Ρ€ΠΈΡ. 25.7) ΠΎΠ½ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ ΠΊΠ°ΠΊ парамСтричСски заданная аналитичСская ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ, опрСдСлСнная уравнСниями [27, с. 20]:

АналитичСскиС повСрхности. Π˜Π½ΠΆΠ΅Π½Π΅Ρ€Π½Π°Ρ 3d-ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Π°Ρ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°.

Π³Π΄Π΅ Ρ‚ = ~la2 + b2.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ сСти (см. Ρ€ΠΈΡ. 25.7, Π°): количСство поясов ΠΏΠΈ = 5, количСство ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΠΈΡ… nv = 30. Π“Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Π΅ значСния: —100 < ΠΈ < 100 (это Π·Π°Π΄Π°Π΅Ρ‚ Π΄Π»ΠΈΠ½Ρƒ ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π΅ΠΉ, Ρ€Π°Π²Π½ΠΎΠΉ 200); 0 < v < 2Ρ‚Π³ (строится ΠΎΠ΄ΠΈΠ½ Π²ΠΈΡ‚ΠΎΠΊ Π½Π°ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ гСлисы). ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π° являСтся радиусом Π½Π°ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ гСлисы, b — шаг гСлисы. ΠŸΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ построСна ΠΏΡ€ΠΈ Π° = 30, b = 10 (рис. 25.7, Π±).

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° построСния аналитичСской повСрхности ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° 25.1 строит ΠΎΠ±Π° Π²ΠΈΠ΄Π° повСрхностСй, ΠΊΠ°ΠΊ явно Π·Π°Π΄Π°Π½Π½Ρ‹Π΅, Ρ‚Π°ΠΊ ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ричСскиС. Ѐункция fp1 содСрТит уравнСния/,., fy, fz создаваСмой повСрхности, ΠΏΠΎ Π½ΠΈΠΌ ΠΈ ΠΏΠΎ ΠΈ, Π³:-ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌ ΡƒΠ·Π»ΠΎΠ² сСти fp 1 рассчитываСт Ρ…, Ρƒ, z-ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΡƒΠ·Π»ΠΎΠ². Π“Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Π΅ значСния сСти, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π΅Π΅ Π΄ΠΈΡΠΊΡ€Π΅Ρ‚ности ΠΈ ΠΏΠΎΡΡ‚оянныС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ повСрхности Π·Π°Π΄Π°ΡŽΡ‚ΡΡ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ getdata.

Ѐункция list mesh рассчитываСт ΠΈ,-ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ всСх ΡƒΠ·Π»ΠΎΠ² сСти ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ fp1 для опрСдСлСния Ρ…, Ρƒ, z-ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ ΡƒΠ·Π»ΠΎΠ². ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ заносятся Π² ΡΠΏΠΈΡΠΎΠΊ mesh.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π½Π°Π³Π»ΡΠ΄Π½ΠΎΡΡ‚ΡŒ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, список mesh пСрСопрСдСляСтся с Ρ†Π΅Π»ΡŒΡŽ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ повСрхности ΠΏΠΎ 2-ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅. Если Π·Π°Π΄Π°Ρ‚ΡŒ коэффициСнт kz = nil, Ρ‚ΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅Ρ‚ся ΠΈ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ строится, Π½ΠΎ ΠΈΡΡ‚ΠΈΠ½Π½Ρ‹ΠΌ значСниям 2-ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚. Π˜Π½Π°Ρ‡Π΅ отсСк повСрхности вписываСтся Π² ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»Π΅ΠΏΠΈΠΏΠ΅Π΄, высота ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π― (см. Ρ€ΠΈΡ. 25.6, Π±, 25.7, Π±) задаСтся ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Π΄Π»ΠΈΠ½Π΅ L = (Π₯|ΠΏΠ°Ρ… — Xmin): Н = kz-L. ΠšΠΎΡΡ„Ρ„ΠΈΡ†ΠΈΠ΅Π½Ρ‚ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ kz подбираСтся ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎ. ΠŸΡ€ΠΈ kz = 0 ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ выроТдаСтся Π² ΠΏΠ»ΠΎΡΠΊΠΎΡΡ‚ΡŒ. ΠŸΡ€ΠΈ kz = 1 высота ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»Π΅ΠΏΠΈΠΏΠ΅Π΄Π° устанавливаСтся Ρ€Π°Π²Π½ΠΎΠΉ Π΅Π³ΠΎ Π΄Π»ΠΈΠ½Π΅ L.

Ѐункция mesh1 Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΡΠ΅Ρ‚ΡŒ ΠΏΠΎ ΡΠΏΠΈΡΠΊΡƒ mes/Π³-ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ Π΅Π΅ ΡƒΠ·Π»ΠΎΠ²Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ. Она основана Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π΅ 3DMESH (Π—ΠžΠ‘Π•Π’Π¬). Π˜ΠΌΠ΅Π΅Ρ‚ΡΡ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΡƒΠ·Π»ΠΎΠ² сСти. КаТдоС ΠΈΠ· Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΈ, nv Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Ρ‚ΡŒ 256. Π‘ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΈΠ΅ возмоТности гСнСрирования сСти Π΄Π°ΡŽΡ‚ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ [10, с. 189, 215].

Главная функция fp рассматриваСмой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ выполняСт Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ настройки ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ рассмотрСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° 25.1

  • 111 ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ повСрхности, Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅ΠΌ z = f (x, y)
  • (defun fpl (u v / z) ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ (1)
  • (setq x u

Ρƒ v.

z (+ (/ (1+ (abs y))) (/ (* Ρƒ (cos (1+ x))) (1+ (abs x))))).

(list x Ρƒ z) ;_Ρ…ΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ uv-ΡƒΠ·Π»Π° сСти.

).

lll==== Π’Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… для повСрхностСй (1) ΠΈ (2).

  • (defun getdata ()
  • (setq umin —10. umax 10.

nu 50 Π΄ΠΈΡΠΊΡ€Π΅Ρ‚Π½ΠΎΡΡ‚ΡŒ сСти ΠΏΠΎ u—ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅ vmin —10. vmax 10.

nv 50; Π΄ΠΈΡΠΊΡ€Π΅Ρ‚Π½ΠΎΡΡ‚ΡŒ сСти no v—ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅ kz 0.7 ;_коэфф. ΠΌΠ°ΡΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎ z—ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅.

;;;========Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ список ΡƒΠ·Π»ΠΎΠ² сСти.

(defun list_mesh (ΡˆΠΏΠ°Ρ… umin vmax vmin nu nv kz / i j k mesh meshl pt stepu stepv.

ΠΈ v xmax xmin zmax zmin).

(setq stepu (/ (— umax umin) (1— ΠΏΠΈ)) ;_шаг no ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ ΠΈ.

stepv (/ (— vmax vmin) (1— nv)) ;_шаг ΠΏΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ v.

i 0 ;_счСтчик ΠΏΠΎ ΠΈ.

).

  • (repeat ΠΏΠΈ ;_Ρ†ΠΈΠΊΠ» ΠΏΠΎ ΠΈ
  • (setq j 0) ;_счСтчик no v (repeat nv ;_Ρ†ΠΈΠΊΠ» no v
  • (setq ΠΈ (+ umin (* i stepu))

v (+ vmin (* j stepv)).

mesh (cons (fpl ΠΈ v) mesh) ;_Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΡƒΠ·Π΅Π» Π² ΡΠΏΠΈΡΠΎΠΊ сСти j (1+ 3)

).

).

(setq i (1+ i)).

).

;;/β€˜ΠœΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ сСти ΠΏΠΎ z-ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅ (if kz (setq.

;;ΡƒΠΏΠΎΡ€ΡΠ΄ΠΎΡ‡ΠΈΡ‚ΡŒ список mesh ΠΏΠΎ ΡƒΠ±Ρ‹Π²Π°Π½ΠΈΡŽ z—ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹.

meshl (vl—sort mesh (function (lambda (el e2) (> (caddr el) (caddr e2))))) zmax (caddr (car meshl)) zmin (caddr (last meshl)).

;;ΡƒΠΏΠΎΡ€ΡΠ΄ΠΎΡ‡ΠΈΡ‚ΡŒ список mesh ΠΏΠΎ ΡƒΠ±Ρ‹Π²Π°Π½ΠΈΡŽ x—ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ meshl (vl—sort mesh (function (lambda (el e2) (> (car el) (car e2))))).

xmax (car (car meshl)) xmin (car (last meshl)).

k (/ (* kz (— xmax xmin)) (— zmax zmin)).

mesh (mapcar '(lambda (pt) (list (car pt) (cadr pt) (* k (caddr pt)))) mesh).

).

).

(reverse mesh);_Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹ΠΉ список сСти.

).

;;;======ΠœΠΎΠ΄ΡƒΠ»ΡŒ гСнСрирования сСти mesh, Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π½Π° ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΎΠΉ сСткС nu*nv.

  • (defun mesh_l (mesh nu nv)
  • (command «_3dmesh» nu nv)
  • (foreach p mesh (command p))

).

;;;======Главная функция.

  • (defun c: fp (/ umax umin vmax vmin nu nv kz)
  • (command «_undo» «_m») ;_ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΊΡƒ (setvar «cmdecho» 0) ;_ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ эхо—Π²Ρ‹Π²ΠΎΠ΄ (setvar «osmode» 0) ;_ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΡƒΡŽ привязку (getdata) ;_Π²Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ…: umax umin vmax vmin nu nv kz
  • (setq mesh (list_mesh umax umin vmax vmin nu nv kz)) /"ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ список сСти (mesh_l mesh nu nv) /"ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π°Π»ΡŒΠ½ΡƒΡŽ ΡΠ΅Ρ‚ΡŒ)
  • (defun c: mu () (command «_undo» «_b»)) /"ΠΎΡ‚ΠΌΠ΅Π½Π° построСний Π΄ΠΎ ΠΌΠ΅Ρ‚ΠΊΠΈ (princ «ΠΏ Π”ля построСния Π½Π°Π±Π΅Ρ€ΠΈ (c:fp) «) ;_сообщСниС ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Для построСния повСрхности Π½Π°Π±Π΅Ρ€ΠΈΡ‚Π΅ тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (ΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ с lisp-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ см. ΠΈ. 8.8), Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ, Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ с ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки имя Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ fp.

Для Π΄Ρ€ΡƒΠ³ΠΈΡ… повСрхностСй Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ уравнСния fx, fy, fz Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ AutoLisp ΠΈ Π²Π½Π΅ΡΡ‚ΠΈ ΠΈΡ… Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ JΡ€1. Π£Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ сколь ΡƒΠ³ΠΎΠ΄Π½ΠΎ слоТным, ΠΎΠ΄Π½Π°ΠΊΠΎ Π² Π»ΡŽΠ±ΠΎΠΌ случаС ΠΈΠ·Π±Π΅Π³Π°ΠΉΡ‚Π΅ Ρ‚ΠΎΡ‡Π΅ΠΊ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… функция Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΡ‡Π΅ΠΊ дСлСния Π½Π° Π½ΠΎΠ»ΡŒ. Π’ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ getdata Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ области опрСдСлСния umin, umax, vmin, vmax, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ nu, nv, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠ΅ Π΄ΠΈΡΠΊΡ€Π΅Ρ‚Π½ΠΎΡΡ‚ΡŒ сСти ΠΏΠΎ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡΠΌ соотвСтствСнно ΠΈ, v, коэффициСнт kz ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΎ Π²Ρ‹ΡΠΎΡ‚Π΅ ΠΈ ΠΏΠΎΡΡ‚оянныС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, входящиС Π² ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΡ повСрхности.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ