Bitbybit Docs
    Preparing search index...

    Class OCCTBrepGraph

    استعلامات بنيوية على شكل OpenCascade منظورا إليه كرسم بياني: أي الأوجه تتلامس، وإلى أي أوجه تنتمي حافة، وأي الحواف تلتقي عند رأس، وأي سطح أو منحنى يدعم كل وجه أو حافة، وكيف تحوي القشور والمجسمات الصلبة بعضها بعضا، وشجرة المنتجات والتواجدات لتجميع. يعيد كل استعلام بيانات بسيطة مع ok ورسالة خطأ بدلا من رمي استثناء، بحيث يمكن لدفعة من الاستعلامات أن تبلغ عن الإخفاقات لكل عنصر؛ ويحول reconstruct عقدة من تلك البيانات مرة أخرى إلى شكل فرعي حقيقي.

    Index

    Constructors

    assembly

    • يقرأ بنية التجميع لشكل كمنتجات وحدوث: المنتج جزء أو تجميع فرعي معرّف مرة واحدة، والحدوث وضع واحد له بمصفوفة وأصل.

      هذا ما ينتجه استيراد تجميع STEP وما يسير عليه عرض الشجرة؛ الشكل العادي لا يبلغ عن أي منتجات.

      Parameters

      Returns Promise<BRepGraphAssemblyResult>

      المنتجات الجذرية وجميع المنتجات وجميع التواجدات

      const tree = await bitbybit.occt.brepGraph.assembly({ shape: imported });
      console.log(tree.products.length, tree.occurrences.length);

    geometry

    • يصف هندسة كل وجه: نوع السطح الذي يقع عليه، وحدود UV له، وما إذا كان يحمل تثليثا، ومعرّفا فريدا.

      تُرقّم الأوجه من 0 بالترتيب الذي تستخدمه shapes.face.getFaces.

      Parameters

      Returns Promise<BRepGraphFaceInfoResult>

      مدخل هندسة واحد لكل وجه

      const faces = await bitbybit.occt.brepGraph.faceInfo({ shape: cylinder });
      console.log(faces.faces.map(f => f.surfaceType));
    • يصف هندسة كل حافة: نوع المنحنى الذي تتبعه، ونطاق معلمتها، واستمراريتها ومعرّفا فريدا.

      تُرقّم الحواف من 0 بالترتيب الذي تسردها به shapes.edge.getEdges.

      Parameters

      Returns Promise<BRepGraphEdgeInfoResult>

      مدخل هندسة واحد لكل حافة

      const edges = await bitbybit.occt.brepGraph.edgeInfo({ shape: cylinder });
      

    navigate

    • يحول عقدة من الرسم البياني، معطاة بنوعها وفهرسها، مجددا إلى الشكل الفرعي الحقيقي الذي تمثله، بحيث يمكن استخدام وجه أو حافة عُثر عليه باستعلام في عملية.

      الفهارس هي التي تستخدمها نتائج الاستعلام، معدودة من 0 لكل نوع.

      Parameters

      Returns Promise<TopoDSShapePointer>

      الشكل الفرعي

      const face = await bitbybit.occt.brepGraph.reconstruct({ shape: box, kind: Bit.Inputs.OCCT.brepGraphNodeKindEnum.face, index: 2 });
      
    • يجد عقدة الرسم البياني التي تمثل شكلا فرعيا معطى من شكل: نوعها وفهرسها ومعرّفها الفريد.

      عكس reconstruct؛ الشكل الفرعي الذي لا ينتمي إلى الشكل يعطي نتيجة معلّمة على أنها غير صالحة.

      Parameters

      Returns Promise<BRepGraphNodeLookup>

      نوع العقدة وفهرسها ومعرّفها، أو نتيجة غير صالحة

      const faces = await bitbybit.occt.shapes.face.getFaces({ shape: box });
      const node = await bitbybit.occt.brepGraph.nodeOfShape({ shape: box, subShape: faces[0] });
      console.log(node.kind, node.index);

    topology

    • يعد مما يتكون شكل: المجسمات الصلبة والقشور والأوجه والأسلاك والحواف والحواف المشتركة والرؤوس، والأسطح والمنحنيات المميزة خلفها، وأي منتجات وحدوث للتجميع.

      أسرع طريقة لمعرفة ما يحويه ملف مستورد، ولتمييز مجسم صلب واحد عن مركب يبدو مثله فقط.

      Parameters

      Returns Promise<BRepGraphAnalysis>

      الأعداد والبيانات الوصفية للرسم البياني

      const census = await bitbybit.occt.brepGraph.analyze({ shape: imported });
      console.log(census.solids, census.faces);
    • يسرد، لكل وجه، الأوجه التي تشترك معه في حافة، مع حوافه وعدد أسلاكه وسلكه الخارجي.

      تُرقّم الأوجه من 0 بالترتيب الذي تسير به النواة على الشكل، الترتيب نفسه الذي تستخدمه shapes.face.getFaces. هذه هي اللبنة الأساسية لتوسيع تحديد إلى الخارج من وجه بذرة أو للعثور على أوجه جيب.

      Parameters

      Returns Promise<BRepGraphFaceAdjacencyResult>

      مدخل تجاور واحد لكل وجه

      const adjacency = await bitbybit.occt.brepGraph.faceAdjacency({ shape: box });
      console.log(adjacency.faces[0].adjacent);
    • يسرد، لكل حافة، الأوجه التي تنتمي إليها ورأسي طرفيها وأعلام طبولوجيتها، مثل ما إذا كانت درزا أو حافة حدودية.

      تُرقّم الحواف من 0 بالترتيب الذي تسردها به shapes.edge.getEdges.

      Parameters

      Returns Promise<BRepGraphEdgeFaceMapResult>

      مدخل واحد لكل حافة

      const edges = await bitbybit.occt.brepGraph.edgeFaceMap({ shape: box });
      
    • يسرد كل رأس مع نقطته ثلاثية الأبعاد وتفاوته والحواف التي تلتقي عنده.

      تُرقّم الرؤوس من 0 بالترتيب الذي تسير به النواة على الشكل.

      Parameters

      Returns Promise<BRepGraphVertexEdgeMapResult>

      مدخل واحد لكل رأس

      const vertices = await bitbybit.occt.brepGraph.vertexEdgeMap({ shape: box });
      
    • يربط أجزاء الشكل إلى الأعلى: إلى أي قشور ينتمي كل وجه، وإلى أي مجسمات صلبة تنتمي كل قشرة، وفي أي مجسمات صلبة ينتهي كل وجه.

      تحمل كل قائمة فهارس أصول عنصر فرعي واحد، فالوجه المشترك بين مجسمين صلبين يسرد الاثنين.

      Parameters

      Returns Promise<BRepGraphContainmentResult>

      فهارس الأصل لكل وجه ولكل قشرة

      const containment = await bitbybit.occt.brepGraph.containment({ shape: compound });
      
    • يصف كل سلك: ما إذا كان مغلقا، وما إذا كان الحد الخارجي لوجهه، وعدد حوافه المشتركة وحوافه المميزة وأي وجه يملكه.

      Parameters

      Returns Promise<BRepGraphWireInfoResult>

      مدخل واحد لكل سلك

      const wires = await bitbybit.occt.brepGraph.wireInfo({ shape: plateWithHoles });
      
    • يفرغ بنية شكل كاملة: كل مجسم صلب وقشرة ووجه وحافة ورأس مع معرّفه الفريد والأجزاء الواقعة مباشرة تحته.

      أثقل استعلام هنا، للتفكير في الطبولوجيا كلها دفعة واحدة بدلا من الإجابة عن سؤال واحد.

      Parameters

      Returns Promise<BRepGraphDumpResult>

      المجسمات الصلبة والقشور والأوجه والحواف والرؤوس مع مراجعها

      const structure = await bitbybit.occt.brepGraph.dump({ shape: box });
      console.log(structure.faces.length, structure.edges.length);

    validation

    • يفحص بنية الرسم البياني لشكل بحثا عن مشكلات مثل المراجع المعلقة أو الروابط غير المتسقة، ويسرد كل مشكلة عُثر عليها مع خطورتها.

      هذا يفحص السجلات لا الهندسة؛ shapes.shape.isValid و shapeFix.basicShapeRepair تتعاملان مع الصلاحية الهندسية.

      Parameters

      Returns Promise<BRepGraphValidationResult>

      ما إذا كان الرسم البياني سليما والمشكلات التي وُجدت

      const report = await bitbybit.occt.brepGraph.validate({ shape: imported });
      console.log(report.valid, report.issues);