ความแตกต่างระหว่างฟีเจอร์การคัดลอกและฟีเจอร์คลาสกับฟีเจอร์เครื่องมือ


13

ฉันมีคลาสคุณลักษณะภายในชุดข้อมูลฟีเจอร์ในไฟล์ geodatabase (FGDB) และฉันต้องการสำเนาของมันใน FGDB อื่น

ใน ArcGIS 10.1 ฉันใช้เครื่องมือ "คัดลอกคุณสมบัติ" และดูเหมือนว่าจะเหมือนกัน (ตามเครื่องมือ "เปรียบเทียบคุณสมบัติ") การใช้เครื่องมือ "คุณลักษณะคลาสเพื่อคุณสมบัติคลาส" ฉันได้รับข้อความต่อไปนี้จาก "เปรียบเทียบคุณสมบัติ":

Field: Field OBJECTID domain fixed is different (Base: false, Test: true).
Field: Field Shape domain fixed is different (Base: false, Test: true).

ใครบ้างมีข้อมูลเชิงลึกเกี่ยวกับความแตกต่างระหว่าง "คุณสมบัติการคัดลอก" และ "คุณสมบัติระดับชั้นคุณสมบัติ" ข้อความจากการเปรียบเทียบคุณสมบัติหมายถึงอะไร

คำตอบ:


16

Class มีการ Class มีเครื่องมือที่เป็นแปลงเครื่องมือ แนวคิดคือการแปลงคลาสคุณลักษณะในหนึ่งรูปแบบ (เช่นรูปร่างไฟล์) ไปเป็นอีกรูปแบบหนึ่ง (เช่นฐานข้อมูลภูมิศาสตร์) นอกจากนี้ยังช่วยให้ผู้ใช้สามารถควบคุมField Map - เช่นฟิลด์ที่จะคัดลอกไป

คัดลอกคุณสมบัติเครื่องมือเพียงสร้างสำเนาถูกต้องของคุณสมบัติการป้อนข้อมูล หมายเหตุ - เครื่องมือนี้ยังสามารถใช้สำหรับการแปลงข้อมูลได้ แต่ไม่สามารถใช้เพื่อจัดการกับ Field Map ได้


9

ความแตกต่างพื้นฐานที่สุดคือระดับที่แต่ละฟังก์ชันใช้งานได้

เครื่องมือFeature Class to Feature ClassทำงานในLayerระดับซึ่งหมายความว่าไม่ว่าคุณลักษณะที่เลือกไว้จะเป็นเช่นนั้นโดยรวม คลาสคุณลักษณะใหม่จะถูกสร้างขึ้น ซึ่งหมายความว่าคุณสามารถควบคุมโครงสร้างของฟีเจอร์คลาสใหม่รวมถึงการเพิ่มและการลบฟิลด์ คุณสามารถเลือกชุดย่อยของคุณสมบัติที่จะคัดลอกไป แต่สิ่งที่สำคัญคือโครงสร้างของเลเยอร์

ในทางกลับกันเครื่องมือคัดลอกคุณลักษณะทำงานในFeatureระดับบุคคล ที่นี่โฟกัสอยู่ที่การใช้ชุดย่อยของคุณสมบัติจากชั้นและคัดลอกพวกเขาและคุณลักษณะทั้งหมดของพวกเขาไปยังชั้นใหม่ การคัดลอกคุณสมบัติหมายถึงการใช้คุณสมบัติทั้งหมดเช่นกัน

มีข้อดีข้อเสียของแต่ละวิธี เครื่องมือทั้งสองจะสร้างคลาสฟีเจอร์ใหม่ไม่ว่าจะด้วยชื่อใหม่หรือถ้าคุณตั้งค่าการประมวลผลทางภูมิศาสตร์ให้ถูกต้องโดยเขียนทับคลาสฟีเจอร์ที่มีอยู่ Feature Class to Feature Classเครื่องมือที่ช่วยให้คุณแมสาขา แต่ จำกัด คุณกับSQLแบบสอบถามเพื่อการส่งออกประเภทย่อยของคุณลักษณะใด ๆ Copy Featuresเครื่องมือที่ช่วยให้คุณสามารถเลือกใดหรือทั้งหมดของคุณสมบัติใน featureclass ถ้ามันเป็นfeature layerด้วยการเลือกใช้กับมัน ข้อเสียเปรียบคือไม่มีการควบคุมโครงสร้างของเอาท์พุทคลาสคลาส HT ถึง @ blah238 สำหรับการชี้แจง

แก้ไข - 5/13/2013

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

ผลลัพธ์ของเครื่องมือเปรียบเทียบคุณลักษณะแสดงว่าObjectIDและShapeฟิลด์นั้นแตกต่างกัน ฉันไม่แน่ใจว่าพารามิเตอร์ที่คุณเลือกสำหรับเครื่องมือนี้ แต่ในเอกสารวิธีใช้ระบุว่าคุณต้องการเลือกSortคำสั่งซื้อที่เหมาะสมเพื่อให้แน่ใจว่าคุณกำลังเปรียบเทียบคุณสมบัติเดียวกัน

อาจเป็นข้อสันนิษฐานที่ปลอดภัยที่คุณใช้ ObjectID เป็นคุณลักษณะการเรียงลำดับหรือใช้ค่าเริ่มต้นเนื่องจากทั้งสองคุณลักษณะมีคุณลักษณะเดียวกัน สิ่งนี้ทำให้เกิดความแตกต่างที่สำคัญระหว่างเครื่องมือทั้งสอง:

Copy Features รักษา ObjectID ของคุณสมบัติที่จะถูกคัดลอก Feature Class to Feature Classสร้างObjectID ใหม่สำหรับแต่ละคุณสมบัติ สิ่งนี้จะลบช่องว่างใด ๆ ในการกำหนดหมายเลขติดต่อกันที่เกิดขึ้นเมื่อคุณสมบัติถูกลบหรือรวมกับส่วนอื่น ๆ

ดังนั้นเครื่องมือการเปรียบเทียบคุณสมบัติจะเห็นความแตกต่างในฟิลด์ ObjectID เนื่องจากไม่มีหมายเลขเดียวกันและในฟิลด์รูปร่างอีกต่อไปเนื่องจากคุณลักษณะสองอย่างที่มี ObjectID เดียวกันอาจไม่เหมือนกันอีกต่อไป

ตัวอย่าง: สองชั้นแต่ละอันมี 100 คุณสมบัติ ObjectID อยู่ในช่วงตั้งแต่ 1-100 ในบางครั้งฟีเจอร์ 98 จะถูกลบออกจาก 99 ฟีเจอร์ลองดูที่ฟีเจอร์ 5 รายการสุดท้ายในแต่ละเลเยอร์:

Original    Copy Feat    Feat to Feat  
    95          95             95  
    96          96             96  
    97          97             97  
    99          99             98  
   100         100             99

อย่างที่คุณเห็น 98 ขาดหายไปจากหนึ่งเลเยอร์ทริกเกอร์ ObjectID ไม่ตรงกัน ObjectID 99 ตอนนี้อ้างถึงคุณสมบัติที่แตกต่างทำให้เกิดรูปร่างไม่ตรงกัน

มีบางสถานการณ์ที่มีประโยชน์ในการรักษา ObjectID เหล่านี้โดยทั่วไปที่ ESRI ได้สร้างการเชื่อมโยงภายในระหว่างคุณลักษณะหรือชั้นเหมือนในชั้นเรียนความสัมพันธ์หรือเครือข่ายทางเรขาคณิต


5
ฉันคิดว่าเครื่องมือทั้งสองจะสร้างคลาสคุณลักษณะใหม่หรือเขียนทับคลาสที่มีอยู่เดิม ข้อแตกต่างคือคุณสมบัติการคัดลอกจะคำนึงถึงการเลือกคุณสมบัติและจะคัดลอกคุณสมบัติที่เลือกไว้เฉพาะเมื่ออินพุตเป็นเลเยอร์คุณลักษณะพร้อมการเลือก จะไม่เพิ่มคุณสมบัติให้กับคลาสคุณสมบัติที่มีอยู่ เพื่อที่คุณจะต้องใช้ผนวกหรือ InsertCursor
blah238

1
คุณมีความคิดใดว่าเหตุใดคุณสมบัติการเปรียบเทียบจะส่งคืนความแตกต่างระหว่างไฟล์ต้นฉบับและไฟล์ที่สร้างโดย "คลาสคุณลักษณะถึงคุณลักษณะของชั้น" หรือไม่?
ด่าน

@Dan - ฉันได้เพิ่มสิ่งที่ฉันคิดว่าจะอธิบายผลการเปรียบเทียบคุณสมบัติ หวังว่ามันจะช่วย
Spatial

อีกเหตุผลที่คุณสมบัติการเปรียบเทียบสามารถค้นหาความแตกต่างในรูปร่างได้เนื่องจากความแม่นยำของจุดลอยตัวดู: gis.stackexchange.com/questions/40481/…
ใต้ Radar
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.