در این مطلب، ویدئو Python in Dynamo: Areas from Rooms (API 6) با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:18:06
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,000 –> 00:00:14,470
[موسیقی]
2
00:00:15,440 –> 00:00:17,580
از آنجا خارج شوید، در حال تماشای
3
00:00:17,580 –> 00:00:19,289
گورو پرتو استرالیایی هستید و قسمت
4
00:00:19,289 –> 00:00:21,750
ششم غنی یا یک نوع API مورد احترام از
5
00:00:21,750 –> 00:00:23,730
مینی سریال در سری پایتون ما برای
6
00:00:23,730 –> 00:00:25,619
دینامو دارید و امروز ما به
7
00:00:25,619 –> 00:00:28,019
دنبال ایجاد مناطق از اتاقهای I هستیم.
8
00:00:28,019 –> 00:00:29,580
بنابراین برخی از عناصر سریعتر را
9
00:00:29,580 –> 00:00:32,159
ایجاد کرده و برخی از ویژگیهای آنها را تنظیم
10
00:00:32,159 –> 00:00:33,899
میکنیم، بنابراین ما چند ویدیوی قبلی داریم، بنابراین
11
00:00:33,899 –> 00:00:35,280
احتمالاً میخواهید
12
00:00:35,280 –> 00:00:36,570
حداقل به آن پی ببرید، توصیه میکنم دو قسمت قبلی را تماشا کنید
13
00:00:36,570 –> 00:00:38,309
زیرا این به نوعی شبیه به
14
00:00:38,309 –> 00:00:40,940
سه بخشی از مینیسریالها در یک سری،
15
00:00:40,940 –> 00:00:44,129
اما بله مناطقی از اتاقها، بنابراین در این
16
00:00:44,129 –> 00:00:45,450
ویدیو ما میخواهیم Revit
17
00:00:45,450 –> 00:00:47,039
API Doc را همانطور که
18
00:00:47,039 –> 00:00:48,960
همیشه داریم پیمایش کنیم، سپس از یک تابع
19
00:00:48,960 –> 00:00:50,820
برای دریافت مقادیر پارامتر استفاده میکنیم، بنابراین این یک
20
00:00:50,820 –> 00:00:53,610
نوع مفیدتر است. تابع یا
21
00:00:53,610 –> 00:00:56,340
روش عمومی که در پایتون بسیار زیاد
22
00:00:56,340 –> 00:00:58,620
برای دینام استفاده میکنیم، سپس قسمتهایی
23
00:00:58,620 –> 00:01:00,480
ایجاد میکنیم و ویژگیهای ناحیهها را
24
00:01:00,480 –> 00:01:01,980
بر اساس این مقادیری که
25
00:01:01,980 –> 00:01:05,960
از اتاقهای خود به دست آوردهایم تنظیم میکنیم، بنابراین اجازه دهید شروع کنیم تا به
26
00:01:05,960 –> 00:01:08,040
آنها نگاه کنیم. یک گردش کار مبتنی بر سه بخش
27
00:01:08,040 –> 00:01:09,900
i در قسمت اول، منحنیها را
28
00:01:09,900 –> 00:01:12,360
از اتاقهای دینامو دریافت کردیم و سپس در قسمت
29
00:01:12,360 –> 00:01:14,280
سوم، خطوط مرزی منطقه را
30
00:01:14,280 –> 00:01:15,869
با استفاده از این منحنیها ایجاد کردیم و اکنون
31
00:01:15,869 –> 00:01:17,939
آنها را با مناطقی پر میکنیم که بر اساس اتاقهایی
32
00:01:17,939 –> 00:01:19,680
که از اسکریپتهای اولیه ایجاد شدهاند،
33
00:01:19,680 –> 00:01:22,650
بنابراین میخواهیم باید از
34
00:01:22,650 –> 00:01:25,799
مکان نقطه نقطه یک ویژگی اتاق هایمان استفاده
35
00:01:25,799 –> 00:01:27,509
کنیم تا بفهمیم مکانی
36
00:01:27,509 –> 00:01:30,689
که اتاق در بالای اتاق قرار دارد
37
00:01:30,689 –> 00:01:33,060
به عنوان یک کلاس عنصر فضایی در این
38
00:01:33,060 –> 00:01:35,810
مورد یا یک عنصر فضایی از آن کلاس
39
00:01:35,810 –> 00:01:37,860
و همچنین اینکه ما دیده می شود. ما از
40
00:01:37,860 –> 00:01:39,810
روش پارامترهای دریافت استفاده خواهیم کرد و این
41
00:01:39,810 –> 00:01:41,400
روش بسیار مفیدی است که در آن شما می توانید
42
00:01:41,400 –> 00:01:44,040
یک پارامتر را با نام به دست آورید و سپس ما
43
00:01:44,040 –> 00:01:45,780
آن را با استفاده
44
00:01:45,780 –> 00:01:49,049
از روش نقطه سه رشته ای که ما
45
00:01:49,049 –> 00:01:50,729
همچنین قصد داریم آن را به یک رشته تبدیل کنیم. از Creek برای ایجاد یک منطقه استفاده کنید،
46
00:01:50,729 –> 00:01:53,189
اما ما همچنین باید
47
00:01:53,189 –> 00:01:55,380
ویژگی های نام و شماره آن را برای
48
00:01:55,380 –> 00:01:57,750
منطقه تنظیم کنیم، بنابراین از
49
00:01:57,750 –> 00:02:01,200
روش منطقه جدید استفاده می کنیم که فکر نمی
50
00:02:01,200 –> 00:02:03,060
کنم اینجا نشان داده باشم. من به شما نشان خواهم داد
51
00:02:03,060 –> 00:02:04,950
که در Revit API Docs ممکن است
52
00:02:04,950 –> 00:02:07,259
فقط انجام دهم که اکنون و ما فقط
53
00:02:07,259 –> 00:02:07,920
54
00:02:07,920 –> 00:02:12,030
به دنبال ناحیه جدید می گردیم و متد ناحیه جدید را پیدا می
55
00:02:12,030 –> 00:02:13,200
کنیم که باید به
56
00:02:13,200 –> 00:02:15,900
فضای نام ایجاد سند یا
57
00:02:15,900 –> 00:02:17,940
فضای نام ایجاد revit در
58
00:02:17,940 –> 00:02:20,010
کلاس سند تعلق داشته باشد و در این صورت
59
00:02:20,010 –> 00:02:21,930
یک فضای جدید ایجاد می کنیم. منطقه ای که
60
00:02:21,930 –> 00:02:24,510
باید در یک نمای منطقه خاص در یک
61
00:02:24,510 –> 00:02:26,280
نقطه UV خاص باشد که نقطه ای است
62
00:02:26,280 –> 00:02:28,830
که از اتاق خود به دست می آوریم و
63
00:02:28,830 –> 00:02:30,540
سپس نام
64
00:02:30,540 –> 00:02:33,110
و تعداد املاک را به عنوان یک منطقه تنظیم می کنیم.
65
00:02:33,110 –> 00:02:35,970
در زیر کلاس ناحیه، کم و
66
00:02:35,970 –> 00:02:38,910
بیش یک گردش کاری است که ما دنبال می کنیم، پس
67
00:02:38,910 –> 00:02:43,080
بیایید شروع کنیم خوب، بنابراین
68
00:02:43,080 –> 00:02:45,180
آخرین باری که در قسمت 1 کار را تمام کردیم
69
00:02:45,180 –> 00:02:47,160
، اسکریپت پایتون را تولید کردیم که
70
00:02:47,160 –> 00:02:48,780
اساساً در این یادداشت سفارشی است
71
00:02:48,780 –> 00:02:51,390
که می توانید پیدا کنید. در بسته سفارشی من
72
00:02:51,390 –> 00:02:53,580
به نام crumpled در github من، سپس
73
00:02:53,580 –> 00:02:55,739
منحنیهای خروجی را که
74
00:02:55,739 –> 00:02:58,080
از این به دست میآمدند صاف کردیم و سپس همه آنها را به
75
00:02:58,080 –> 00:03:01,799
خطوط ناحیه در نمای فعال تبدیل کردیم، بنابراین
76
00:03:01,799 –> 00:03:03,630
تقریباً به اینجا رسیدیم، بنابراین
77
00:03:03,630 –> 00:03:05,549
این منحنیهای محدودکننده ناحیه را داریم اما این کار را انجام نمیدهیم.
78
00:03:05,549 –> 00:03:07,500
هیچ وجود ندارد برای قرار دادن در اینجا، کاری که
79
00:03:07,500 –> 00:03:09,959
میخواهیم انجام دهیم این است که اتاقها را از
80
00:03:09,959 –> 00:03:11,340
همان سطحی که
81
00:03:11,340 –> 00:03:13,950
منحنیهای منطقه را از آن ایجاد کردهایم، بگیریم و سپس میخواهیم
82
00:03:13,950 –> 00:03:15,299
شمارههای آنها را بگیریم و نام
83
00:03:15,299 –> 00:03:18,150
آنها اتاقها را در اینجا به عنوان مناطق ایجاد کند و
84
00:03:18,150 –> 00:03:20,040
تعداد آنها و آنها را تنظیم کنیم. نامی که با اتاق مربوطه مطابقت داشته باشد،
85
00:03:20,040 –> 00:03:23,010
پس بیایید شروع کنیم،
86
00:03:23,010 –> 00:03:25,739
بنابراین در این مورد، احتمالاً
87
00:03:25,739 –> 00:03:32,519
مجبور میشوم کاهنه ییل فریزر را mmm کنم، بنابراین
88
00:03:32,519 –> 00:03:33,780
میخواهیم گره تولید خط منطقه خود را منجمد کنیم.
89
00:03:33,780 –> 00:03:35,130
90
00:03:35,130 –> 00:03:36,420
91
00:03:36,420 –> 00:03:39,090
هر بار که اجرا می کنیم، زیرا
92
00:03:39,090 –> 00:03:40,230
93
00:03:40,230 –> 00:03:42,150
قبل از انجام یک روش ایجاد، کمی آزمایش انجام می دهیم، بنابراین بیایید
94
00:03:42,150 –> 00:03:46,709
فقط گسترش دهیم و طبق معمول
95
00:03:46,709 –> 00:03:49,760
یک اسکریپت پایتون می گیریم که یادداشت ها با آن شروع می شوند،
96
00:03:49,760 –> 00:03:52,500
بنابراین ما دو متغیر در آن خواهیم داشت.
97
00:03:52,500 –> 00:03:54,630
این مورد اول لیستی از اتاقها خواهد بود،
98
00:03:54,630 –> 00:03:56,370
بنابراین چیزی که من واقعاً باید
99
00:03:56,370 –> 00:04:00,000
بروم و اتاقهایم را جمعآوری کنم، بنابراین من فقط آنها را کنار میزنم
100
00:04:00,000 –> 00:04:04,889
و سپس
101
00:04:04,889 –> 00:04:08,069
آنها را از یک نما تولید میکنیم، بنابراین در
102
00:04:08,069 –> 00:04:10,049
این مورد من فقط می خواهم
103
00:04:10,049 –> 00:04:13,709
سند فعلی و گره نمای فعالی را
104
00:04:13,709 –> 00:04:15,920
105
00:04:16,380 –> 00:04:19,380
که هستم جمع آوری کنم فقط آن را به آن وصل
106
00:04:19,380 –> 00:04:23,560
می کنیم و این را به عنوان ورودی دوم خود در نظر می
107
00:04:23,560 –> 00:04:25,180
گیریم، بنابراین دیدگاهی خواهیم داشت که در این مورد
108
00:04:25,180 –> 00:04:26,830
یک طرح منطقه ای است، شما باید مطمئن شوید که
109
00:04:26,830 –> 00:04:28,180
این یک طرح منطقه ای است که شما به آن نگاه
110
00:04:28,180 –> 00:04:29,950
می کنید. بدیهی است که فقط میتوان مناطقی را در نقشههای منطقه ایجاد کرد،
111
00:04:29,950 –> 00:04:32,710
بنابراین بیایید فقط وارد
112
00:04:32,710 –> 00:04:34,450
اسکریپت پایتون خود شویم و آن
113
00:04:34,450 –> 00:04:38,080
را گسترش دهیم و طبق معمول من
114
00:04:38,080 –> 00:04:39,160
احتمالاً میروم و چند
115
00:04:39,160 –> 00:04:40,480
فضای نامی را که قرار نیست از آنها
116
00:04:40,480 –> 00:04:42,490
استفاده کنیم، بیرون میآورم. از هندسه یا سیستم پروتو استفاده نمیکنیم
117
00:04:42,490 –> 00:04:45,100
و در این مورد از
118
00:04:45,100 –> 00:04:47,410
رابط کاربری API استفاده نمیکنیم، بسیار نادر است که از آن
119
00:04:47,410 –> 00:04:51,280
در دینامو استفاده کنیم، اما بقیه موارد را حفظ میکنیم
120
00:04:51,280 –> 00:04:53,710
در این مورد فقط به
121
00:04:53,710 –> 00:04:56,710
سند فعال نیاز داریم، بنابراین فقط سند را به عنوان سند نگه میداریم.
122
00:04:56,710 –> 00:04:58,720
نمونه مدیر نقطه یا
123
00:04:58,720 –> 00:05:00,190
سند فعلی DV، بنابراین این تقریباً یک
124
00:05:00,190 –> 00:05:02,470
آیین است که میدانید من در
125
00:05:02,470 –> 00:05:04,420
هر اسکریپت آن را دنبال میکنم، اما میخواهم آن را اضافه کنم
126
00:05:04,420 –> 00:05:06,610
فقط در صورتی که کسی تازه وارد این
127
00:05:06,610 –> 00:05:08,740
سری شود، بنابراین اولین چیزی که
128
00:05:08,740 –> 00:05:09,880
در واقع میخواهم انجام دهم. do فقط تعریف
129
00:05:09,880 –> 00:05:11,260
یک تابع است فقط کمی
130
00:05:11,260 –> 00:05:12,520
تقویت را برای چیزی که w انجام می دهد
131
00:05:12,520 –> 00:05:14,770
برای مدت کوتاهی انجام ندادهام،
132
00:05:14,770 –> 00:05:16,090
من فقط یک تابع را تعریف میکنم، فقط
133
00:05:16,090 –> 00:05:18,820
یک تابع لیست باز کردن را انجام میدهم، متأسفانه ما فقط
134
00:05:18,820 –> 00:05:21,040
به یک ورودی نیاز داریم که
135
00:05:21,040 –> 00:05:24,060
در این مورد برای اولین ورودی
136
00:05:24,060 –> 00:05:26,320
که میخواهیم، ورودی ما باشد. ابتدا بگویید که
137
00:05:26,320 –> 00:05:28,270
متغیری به نام دو لیست تعریف می کنیم و
138
00:05:28,270 –> 00:05:33,030
ورودی آن را می گوییم اگر به عنوان مثال باشد،
139
00:05:33,030 –> 00:05:36,480
بررسی می کنم که آیا ورودی یک لیست
140
00:05:36,480 –> 00:05:41,070
است یا نه، ورودی را در یک لیست قرار
141
00:05:41,070 –> 00:05:43,240
می دهیم و سپس می خواهیم یک متغیر cut unwrap را تعریف می کنیم.
142
00:05:43,240 –> 00:05:46,470
من می خواهیم عنصر را باز کنیم
143
00:05:46,470 –> 00:05:49,510
و به آن unwrap در لیست نگاه می کنیم و سپس
144
00:05:49,510 –> 00:05:52,780
فقط unwrap را برمی گردانیم، بنابراین ما
145
00:05:52,780 –> 00:05:54,850
یک تابع کوچک تعریف کرده ایم فقط به این دلیل که
146
00:05:54,850 –> 00:05:56,020
فکر می کردم خوب است که اکنون آن را تقویت کنیم.
147
00:05:56,020 –> 00:05:58,390
بیایید چند ورودی تنظیم کنیم، بنابراین در
148
00:05:58,390 –> 00:05:59,740
این مورد میگوییم که
149
00:05:59,740 –> 00:06:02,260
فهرست اتاقی که میخواهیم آنها را جمعآوری کنیم،
150
00:06:02,260 –> 00:06:04,419
اگرچه اتاقها را بهعنوان فهرستی که باید آنها
151
00:06:04,419 –> 00:06:06,430
را هم باز کنیم، فقط
152
00:06:06,430 –> 00:06:08,080
یک تابع لیست بازشده را فراخوانی
153
00:06:08,080 –> 00:06:11,230
میکنیم. فقط لیست UW تعریف شده است و ما
154
00:06:11,230 –> 00:06:13,330
فقط ورودی 0 را می گیریم بنابراین این
155
00:06:13,330 –> 00:06:15,280
فقط لیستی از اتاق
156
00:06:15,280 –> 00:06:18,130
ها را باز می کند بلافاصله در این مورد به نظر می رسد که
157
00:06:18,130 –> 00:06:20,650
من احتمالاً فقط باید خروجی خود را بیرون بیاورم،
158
00:06:20,650 –> 00:06:23,510
بنابراین من خروجی خود را
159
00:06:23,510 –> 00:06:26,210
فعلاً یک رشته است، اما
160
00:06:26,210 –> 00:06:27,650
اکنون اتاق های خود را به عنوان یک لیست بدون بسته بندی در اختیار
161
00:06:27,650 –> 00:06:30,320
داریم که می توانیم با یک API سریع کار کنید
162
00:06:30,320 –> 00:06:32,630
و همچنین در این مورد نیاز
163
00:06:32,630 –> 00:06:34,520
داریم تا نمای خود را بدست آوریم، بنابراین نمای Revit خود را دریافت می
164
00:06:34,520 –> 00:06:38,090
کنیم و همچنین
165
00:06:38,090 –> 00:06:40,820
این عنصر را باز می کنیم تا بتوانیم آن را
166
00:06:40,820 –> 00:06:42,980
از طریق API و در این مورد پردازش کنیم. در این مورد، من
167
00:06:42,980 –> 00:06:45,410
فقط ورودی دوم را باز می کنم،
168
00:06:45,410 –> 00:06:48,560
بنابراین در این مورد ما
169
00:06:48,560 –> 00:06:50,030
به یک مدیر تراکنش نیاز داریم، زیرا
170
00:06:50,030 –> 00:06:51,380
ما عناصری را ایجاد می کنیم، بنابراین
171
00:06:51,380 –> 00:06:52,940
من فقط بین شروع و پایان مدیر تراکنش کار می کنم،
172
00:06:52,940 –> 00:06:55,970
ما
173
00:06:55,970 –> 00:06:57,740
تعریف می کنیم چند لیست خالی برای اینکه بتوانیم
174
00:06:57,740 –> 00:06:59,390
مقداری از اسکریپت خود را در
175
00:06:59,390 –> 00:07:01,580
طرف دیگر منتقل کنیم، بنابراین میخواهم بگویم
176
00:07:01,580 –> 00:07:03,740
مناطقی را میخواهم که اینها مناطقی هستند که به
177
00:07:03,740 –> 00:07:05,420
عنوان عناصر دینامیتی میسازم، بنابراین
178
00:07:05,420 –> 00:07:07,550
باید آنها را دوباره تبدیل کنیم.
179
00:07:07,550 –> 00:07:09,530
اعداد و نامهایی که آنقدر
180
00:07:09,530 –> 00:07:11,750
خوب هستند، ممکن است هدفی برای داشتن
181
00:07:11,750 –> 00:07:13,970
آنها روی آن باشد انتهای دیگر گره و
182
00:07:13,970 –> 00:07:15,830
ما فقط می خواهیم سه لیست خالی ایجاد کنیم
183
00:07:15,830 –> 00:07:19,460
که با کاما از هم جدا شده اند، خوب است، بنابراین
184
00:07:19,460 –> 00:07:21,260
شروع می کنیم و روی لیست اتاق خود تکرار می کنیم،
185
00:07:21,260 –> 00:07:24,350
بنابراین می گوییم یا اتاق را به عنوان
186
00:07:24,350 –> 00:07:27,760
یک متغیر محلی در زیر خط نشان می دهیم.
187
00:07:27,760 –> 00:07:31,250
ستون لیست و اولین
188
00:07:31,250 –> 00:07:32,810
کاری که میخواهیم انجام دهیم این است که
189
00:07:32,810 –> 00:07:34,100
مکان اتاق خود را به دست میآوریم، بنابراین میگوییم مکان
190
00:07:34,100 –> 00:07:36,110
ما فقط آن را صدا میزنیم در این
191
00:07:36,110 –> 00:07:39,020
مورد دقیقاً همانطور که متغیر محلی برابر
192
00:07:39,020 –> 00:07:41,270
با اتاق ما است. و ما میخواهیم
193
00:07:41,270 –> 00:07:43,460
روش مکان را در اتاق اعمال کنیم و سپس
194
00:07:43,460 –> 00:07:46,160
فقط میتوانیم روش نقطه را برای به
195
00:07:46,160 –> 00:07:48,080
دست آوردن ویژگی مکان و
196
00:07:48,080 –> 00:07:50,270
سپس برای به دست آوردن نقطه آن اعمال کنیم، بنابراین
197
00:07:50,270 –> 00:07:51,440
تمام نقاطی را که من اتاق دارم به دست میآوریم.
198
00:07:51,440 –> 00:07:53,080
در حال حاضر میتوانیم آن را خیلی سریع آزمایش
199
00:07:53,080 –> 00:07:58,070
کنیم، احتمالاً با mm-hmm منظورم این است
200
00:07:58,070 –> 00:07:59,450
که از نظر فنی
201
00:07:59,450 –> 00:08:04,610
میتوانیم به پیوست ادامه دهیم، حدس میزنم میتوانیم مانند مناطق وابسته عمل
202
00:08:04,610 –> 00:08:06,320
کنیم، بنابراین ما فقط وابسته خواهیم بود در واقع
203
00:08:06,320 –> 00:08:09,830
سه ناحیه را اضافه میکنیم، موقعیت مکانی بستگی دارد، فقط
204
00:08:09,830 –> 00:08:12,050
بنابراین میتوانیم موقتاً ببینید در این مورد با چه چیزی سر و کار داریم
205
00:08:12,050 –> 00:08:16,130
من فکر می
206
00:08:16,130 –> 00:08:18,590
کنم یک خطایی وجود دارد اُم اتاقها در
207
00:08:18,590 –> 00:08:22,040
لیست مدرسه باید تایپ نکرده باشم آه،
208
00:08:22,040 –> 00:08:25,460
به جای لیست اتاقها، میگویم فهرست اتاقها
209
00:08:25,460 –> 00:08:29,780
هنوز هم خوب هستم خطای 42 اضافه کردن علاقهمند نیست،
210
00:08:29,780 –> 00:08:31,580
من کاری را اشتباه انجام دادهام
211
00:08:31,580 –> 00:08:33,900
که باید مناطق نقطه باشد اضافه کنید
212
00:08:33,900 –> 00:08:36,900
و به عنوان یک روش، پرنده من، در
213
00:08:36,900 –> 00:08:38,580
حال حاضر ما فقط چند نقطه خرگوش را از بین میبریم،
214
00:08:38,580 –> 00:08:40,440
بنابراین شما میتوانید آنها را در آنجا ببینید،
215
00:08:40,440 –> 00:08:42,360
آنها در حال حاضر نقاط قابل پردازش دی