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 সীমা, এটি একটি ত্রিভুজায়ন বহন করে কিনা, এবং একটি অনন্য id।

      ফেসগুলি shapes.face.getFaces যে ক্রম ব্যবহার করে সেই ক্রমে 0 থেকে সংখ্যায়িত।

      Parameters

      Returns Promise<BRepGraphFaceInfoResult>

      প্রতি ফেসে একটি জ্যামিতি এন্ট্রি

      const faces = await bitbybit.occt.brepGraph.faceInfo({ shape: cylinder });
      console.log(faces.faces.map(f => f.surfaceType));
    • প্রতিটি এজের জ্যামিতি বর্ণনা করে: এটি যে ধরনের কার্ভ অনুসরণ করে, তার প্যারামিটার পরিসর, তার ধারাবাহিকতা এবং একটি অনন্য id।

      এজগুলি shapes.edge.getEdges যে ক্রমে সেগুলি তালিকাভুক্ত করে সেই ক্রমে 0 থেকে সংখ্যায়িত।

      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 });
      
    • একটি আকৃতির একটি দেওয়া সাব-আকৃতির প্রতিনিধিত্বকারী গ্রাফ নোডটি খুঁজে বের করে: তার ধরন, তার সূচক ও তার অনন্য id।

      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);
    • প্রতিটি এজের জন্য, এটি যে ফেসগুলির অন্তর্গত, তার প্রান্ত ভার্টেক্স ও তার টপোলজি ফ্ল্যাগগুলি, যেমন এটি একটি সিম নাকি একটি সীমানা এজ, তালিকাভুক্ত করে।

      এজগুলি shapes.edge.getEdges যে ক্রমে সেগুলি তালিকাভুক্ত করে সেই ক্রমে 0 থেকে সংখ্যায়িত।

      Parameters

      Returns Promise<BRepGraphEdgeFaceMapResult>

      প্রতি এজে একটি এন্ট্রি

      const edges = await bitbybit.occt.brepGraph.edgeFaceMap({ shape: box });
      
    • প্রতিটি ভার্টেক্সকে তার 3D বিন্দু, তার টলারেন্স এবং সেখানে মিলিত এজগুলিসহ তালিকাভুক্ত করে।

      ভার্টেক্সগুলি কার্নেল যে ক্রমে আকৃতিটি হাঁটে সেই ক্রমে 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 });
      
    • একটি আকৃতির পুরো কাঠামো ডাম্প করে: প্রতিটি সলিড, শেল, ফেস, এজ ও ভার্টেক্স তার অনন্য id ও এর সরাসরি নিচের অংশগুলিসহ।

      এখানকার সবচেয়ে ভারী কোয়েরি, একটি প্রশ্নের উত্তর দেওয়ার বদলে পুরো টপোলজি নিয়ে একসাথে ভাবার জন্য।

      Parameters

      Returns Promise<BRepGraphDumpResult>

      সলিড, শেল, ফেস, এজ ও ভার্টেক্সগুলি তাদের রেফারেন্সসহ

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

    validation

    • একটি আকৃতির গ্রাফের কাঠামো ঝুলন্ত রেফারেন্স বা অসামঞ্জস্যপূর্ণ লিঙ্কের মতো সমস্যার জন্য পরীক্ষা করে, এবং পাওয়া প্রতিটি সমস্যাকে তার গুরুত্বসহ তালিকাভুক্ত করে।

      এটি হিসাব-নিকাশ পরীক্ষা করে, জ্যামিতি নয়; shapes.shape.isValidshapeFix.basicShapeRepair জ্যামিতিক বৈধতা সামলায়।

      Parameters

      Returns Promise<BRepGraphValidationResult>

      গ্রাফটি সঠিক কিনা এবং পাওয়া সমস্যাগুলি

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