Amazon Best VPN GoSearch

ไอคอน Fav ของ OnWorks

v.net.pathgrass - ออนไลน์ใน Cloud

เรียกใช้ v.net.pathgrass ในผู้ให้บริการโฮสต์ฟรีของ OnWorks ผ่าน Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

นี่คือคำสั่ง v.net.pathgrass ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้หนึ่งในเวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

โครงการ:

ชื่อ


v.net.path - ค้นหาเส้นทางที่สั้นที่สุดบนเครือข่ายเวกเตอร์

KEYWORDS


เวกเตอร์ เครือข่าย เส้นทางที่สั้นที่สุด

เรื่องย่อ


v.net.path
v.net.path --ช่วยด้วย
v.net.path [-gs] อินพุต=พร้อมชื่อ เอาท์พุต=พร้อมชื่อ [ชนิด=เชือก[,เชือก-arc_layer=เชือก]
[node_layer=เชือก] [ไฟล์=พร้อมชื่อ] [arc_คอลัมน์=เชือก] [arc_backward_column=เชือก]
[node_column=เชือก] [dmax=ลอย-เขียนทับ-ช่วย-ละเอียด-เงียบสงบ]
-ui]

ธง:
-g
ใช้การคำนวณ geodesic สำหรับตำแหน่งลองจิจูด-ละติจูด

-s
เขียนเอาต์พุตเป็นส่วนอินพุตดั้งเดิม ไม่ใช่แต่ละเส้นทางเป็นหนึ่งบรรทัด

--เขียนทับ
อนุญาตให้ไฟล์เอาต์พุตเขียนทับไฟล์ที่มีอยู่

--ช่วยด้วย
พิมพ์สรุปการใช้งาน

--รายละเอียด
เอาต์พุตโมดูล verbose

--เงียบ
เอาต์พุตโมดูลเงียบ

--UI
บังคับให้เปิดใช้กล่องโต้ตอบ GUI

พารามิเตอร์:
อินพุต=พร้อมชื่อ [ที่จำเป็น]
ชื่อของแผนที่เวกเตอร์อินพุต
หรือแหล่งข้อมูลสำหรับการเข้าถึง OGR โดยตรง

เอาท์พุต=พร้อมชื่อ [ที่จำเป็น]
ชื่อสำหรับแผนที่เวกเตอร์เอาต์พุต

ชนิด=สตริง[,สตริง-
ประเภทอาร์ค
ประเภทคุณสมบัติอินพุต
ตัวเลือก: บรรทัด เขตแดน
ค่าเริ่มต้น: เส้นเขตแดน

arc_layer=เชือก
ชั้นอาร์ค
คุณลักษณะเวกเตอร์สามารถมีค่าหมวดหมู่ในชั้นต่างๆ ตัวเลขนี้กำหนด
ใช้ชั้นไหน เมื่อใช้กับการเข้าถึง OGR โดยตรง นี่คือชื่อเลเยอร์
ค่าเริ่มต้น: 1

node_layer=เชือก
ชั้นโหนด
คุณลักษณะเวกเตอร์สามารถมีค่าหมวดหมู่ในชั้นต่างๆ ตัวเลขนี้กำหนด
ใช้ชั้นไหน เมื่อใช้กับการเข้าถึง OGR โดยตรง นี่คือชื่อเลเยอร์
ค่าเริ่มต้น: 2

ไฟล์=พร้อมชื่อ
ชื่อไฟล์ที่มีจุดเริ่มต้นและจุดสิ้นสุด หากไม่ได้รับ อ่านจาก stdin

arc_คอลัมน์=เชือก
อาร์คไปข้างหน้า/คอลัมน์ต้นทุนทั้งสองทิศทาง (จำนวน)

arc_backward_column=เชือก
คอลัมน์ต้นทุนทิศทางย้อนกลับ (จำนวน)

node_column=เชือก
คอลัมน์ต้นทุนโหนด (หมายเลข)

dmax=ลอย
ระยะทางสูงสุดไปยังเครือข่าย
หากกำหนดจุดเริ่มต้น/จุดสิ้นสุดเป็นพิกัด หากจุดเริ่มต้น/จุดสิ้นสุดอยู่นอกเกณฑ์นี้
ไม่พบเส้นทางและข้อความแสดงข้อผิดพลาดถูกพิมพ์ เพื่อเร่งกระบวนการให้เก็บสิ่งนี้ไว้
มูลค่าให้ต่ำที่สุด
ค่าเริ่มต้น: 1000

DESCRIPTION


v.net.path กำหนดค่าใช้จ่ายน้อยที่สุด เช่น เส้นทางที่สั้นที่สุดหรือเร็วที่สุดบนเครือข่ายเวกเตอร์

ค่าใช้จ่ายอาจเป็นความยาวบรรทัด หรือแอตทริบิวต์ที่บันทึกไว้ในตารางฐานข้อมูล คุณลักษณะเหล่านี้
ค่าจะถูกนำมาเป็นต้นทุนของทั้งเซ็กเมนต์ ไม่ใช่ค่าใช้จ่ายในการสำรวจหน่วยความยาว (เช่น
เมตร) ของส่วน ตัวอย่างเช่น หากจำกัดความเร็วไว้ที่ 100 กม./ชม. ค่าใช้จ่ายถึง
ส่วนถนนยาว 10 กม. ให้คำนวณเป็น
ความยาว / ความเร็ว = 10 กม. / (100 กม./ชม.) = 0.1 ชม.
รองรับการกำหนดต้นทุนสำหรับทั้งส่วนโค้งและโหนด และค่าใช้จ่ายที่แตกต่างกันสำหรับทั้งคู่
ทิศทางของเส้นเวกเตอร์ สำหรับพื้นที่ ต้นทุนจะถูกคำนวณตามเส้นเขตแดน

ต้องเตรียมเวกเตอร์อินพุตด้วย v.net operation=connect เพื่อเชื่อมต่อ
จุดแทนโหนดกลางไปยังเครือข่าย

โหนดและส่วนโค้งสามารถปิดได้โดยใช้ราคา = -1

เส้นทางต้นทุนต่ำสุดถูกเขียนลงในแผนที่เวกเตอร์เอาต์พุตพร้อมตารางแอตทริบิวต์ที่แนบมา

โหนดสามารถ

· ไพพ์เข้าสู่โปรแกรมจากไฟล์หรือจาก stdin หรือ

· กำหนดไว้ในอินเทอร์เฟซผู้ใช้แบบกราฟิก ("ป้อนค่าแบบโต้ตอบ")
ไวยากรณ์เป็นดังนี้:
รหัส start_point_category end_point_category
(ตัวอย่าง: 1 1 2)

or
รหัส start_point_x start_point_y end_point_x end_point_y

จุดที่ระบุตามหมวดหมู่จะต้องอยู่บนโหนดเครือข่ายทุกประการ และอินพุตเวกเตอร์ map
ต้องเตรียม v.net operation=connect

เมื่อระบุพิกัด ระบบจะใช้โหนดเครือข่ายถัดไปไปยังคู่พิกัดที่กำหนด

ตารางแอตทริบิวต์จะมีแอตทริบิวต์ต่อไปนี้:

· cat - หมวดหมู่เฉพาะเส้นทางที่กำหนดโดยโมดูล

· id - รหัสเส้นทาง (อ่านจากอินพุต)

· fcat - จากหมวดหมู่จุด

· tcat - ชี้หมวดหมู่

· sp - สถานะผลลัพธ์:

· 0 - ตกลง พบเส้นทาง

· 1 - ไม่สามารถเข้าถึงโหนดได้

· 2 - ไม่มีหมวดหมู่ที่กำหนด

· ค่าใช้จ่าย - ค่าเดินทาง (ในเครือข่าย ไม่ใช่ เข้า/ออกจากเครือข่าย)

· fdist - ระยะทางจากจุดแรกไปยังเครือข่าย

· tdist - ระยะทางจากเครือข่ายไปยังจุดที่สอง

หมายเหตุ


โหนดและส่วนโค้งสามารถปิดได้โดยใช้ราคา = -1

ถ้าคอลัมน์ต้นทุน arc_คอลัมน์, arc_backward_column และ node_column ไม่ได้ระบุไว้
วัดความยาวของส่วนเครือข่ายและคิดค่าใช้จ่ายเป็นศูนย์สำหรับโหนด

เมื่อใช้แอตทริบิวต์ ความยาวของเซ็กเมนต์จะไม่ถูกใช้ เพื่อให้ได้ผลลัพธ์ที่ถูกต้อง
ต้องคำนึงถึงความยาวบรรทัดเมื่อกำหนดต้นทุนเป็นแอตทริบิวต์ ตัวอย่างเช่น ถึง
รับ ที่เร็วที่สุด เส้นทางจำเป็นต้องมีคอลัมน์ 'max_speed' และ 'length' ถูกต้อง
คุณสามารถค้นหาเส้นทางที่เร็วที่สุดได้โดยการระบุ arc_column=length/max_speed ถ้ายังไม่ได้
ที่มีอยู่ คอลัมน์ที่มีความยาวบรรทัด ("ความยาว") ต้องเพิ่มแอตทริบิวต์
ตารางที่ใช้ v.to.db.

ตัวอย่าง


เส้นทางที่สั้นที่สุด (สีแดง) และเร็วที่สุด (สีน้ำเงิน) ระหว่างโหนดดิจิทัลสองโหนด (Spearfish):

#ปลากระพง
echo "1|601955.1|4916944.9|เริ่ม
2|594385.6|4921565.2|end" | v.in.ascii in=- cat=1 x=2 y=3 out=startend col="cat integer, \
ความแม่นยำสองเท่าตะวันออก, ความแม่นยำสองเท่าทางเหนือ, ฉลาก วาร์ชาร์(6)"
v.db.เลือกจุดเริ่มต้น
g.copy vect=ถนน,ถนนของฉัน
#สร้างเส้นแมปจุดเชื่อมต่อเครือข่าย
v.net myroads points=startend out=myroads_net op=เชื่อมต่อ thresh=500 arc_layer=1 node_layer=2
#ตั้งค่าต้นทุน
# สร้างหมวดหมู่ที่ไม่ซ้ำกันสำหรับแต่ละถนนในเลเยอร์ 3
v.หมวดหมู่ in=myroads_net out=myroads_net_time opt=add cat=1 layer=3 type=line
# เพิ่มตารางใหม่สำหรับเลเยอร์ 3
v.db.addtable myroads_net_time layer=3 col="cat integer,label วาร์ชาร์(43), ความแม่นยำสองเท่าความยาว, ความแม่นยำสองเท่าความเร็ว, ความแม่นยำสองเท่าต้นทุน, ความแม่นยำสองเท่า bcost "
#คัดลอกประเภทถนนไปยังชั้น3
v.to.db myroads_net_time layer=3 qlayer=1 opt=query qcolumn=label คอลัมน์=label
# อัปโหลดความยาวถนนเป็นไมล์
v.to.db myroads_net_time layer=3 type=line option=length col=ความยาวหน่วย=ไมล์
# กำหนดขีด จำกัด ความเร็วเป็นไมล์ / ชั่วโมง
v.db.update myroads_net_time layer=3 col=ความเร็ว val="5.0"
v.db.update myroads_net_time layer=3 col=speed val="75.0" where="label='interstate'"
v.db.update myroads_net_time layer=3 col=speed val="75.0" where="label='primary highway, hard surface'"
v.db.update myroads_net_time layer=3 col=speed val="50.0" where="label='secondary highway, hard surface'"
v.db.update myroads_net_time layer=3 col=speed val="25.0" where="label='light-duty road, updated surface'"
v.db.update myroads_net_time layer=3 col=speed val="5.0" where="label='unimproved road'"
# กำหนดค่าใช้จ่ายในการเดินทางเป็นเวลาเดินทางเป็นนาที:
#กำหนดต้นทุนล่วงหน้า
v.db.update myroads_net_time layer=3 col=cost val="ความยาว / ความเร็ว * 60"
#ตั้งต้นทุนย้อนหลัง
v.db.update myroads_net_time layer=3 col=bcos val="ความยาว / ความเร็ว * 60"
# ... โหนด 'เริ่มต้น' และ 'สิ้นสุด' มีหมวดหมู่หมายเลข 1 และ 2
# เส้นทางที่สั้นที่สุด: ID เป็นตัวเลขแรก จากนั้น cat1 และ cat2
echo "1 1 2" | v.net.path myroads_net_time arc_layer=3 node_layer=2 out=mypath
# เส้นทางที่เร็วที่สุด: ID เป็นตัวเลขแรก จากนั้น cat1 และ cat2
echo "1 1 2" | v.net.path myroads_net_time arc_layer=3 node_layer=2 arc_column=ราคา arc_backward_column=bcost out=mypath_time
หากต้องการแสดงผล ให้รันเช่น:
g.region vector=ถนนของฉัน_net
ดีมอน x0
d.vect myroads_net
#แสดงเส้นทางที่สั้นที่สุด
d.vect mypath col=ความกว้างสีแดง=2
#แสดงเส้นทางที่เร็วที่สุด
d.vect mypath_time col=สีน้ำเงิน width=2
#จุดเริ่มต้นและจุดสิ้นสุด
d.vect myroads_net icon=พื้นฐาน/สามเหลี่ยม fcol=ขนาดสีเขียว=12 ชั้น=2
d.font font=เวร่า
d.vect startend disp=cat type=point lsize=14 layer=2

ใช้ v.net.pathgrass ออนไลน์โดยใช้บริการ onworks.net


เซิร์ฟเวอร์และเวิร์กสเตชันฟรี

ดาวน์โหลดแอพ Windows & Linux

คำสั่ง Linux

Ad




×
โฆษณา
❤️ช้อป จอง หรือซื้อที่นี่โดยไม่เสียค่าใช้จ่าย ช่วยให้บริการต่างๆ ฟรี