!trPFMasOMDqcwYBXEy:matrix.org

CadQuery

558 Members
https://github.com/CadQuery/cadquery9 Servers

Load older messages


SenderMessageTime
29 May 2023
@_discord_332903554807234560:t2bot.ioqwelyt#839020230529_085557.png
Download 20230529_085557.png
06:57:24
@_discord_332903554807234560:t2bot.ioqwelyt#8390 Hm. Not really. I think. I have a face that I want to dynamically get the measurements for to then be able to extrude. 06:57:25
@_discord_186253289476587521:t2bot.ioDraek#9615 Just get the pending wires and extrude that ? 06:58:25
@_discord_332903554807234560:t2bot.ioqwelyt#8390 How do you extrude at an angle? 06:58:55
@_discord_332903554807234560:t2bot.ioqwelyt#8390 Currently I do this, which is not optimal at all
    def extend(wp, f):
        face = wp.faces(f)
        debug(face)
        b = (face.workplane(centerOption="CenterOfMass")
             .transformed(rotate=cq.Vector(45,0,0))
             .rect(choc_skirtXY[0],moduleZ-0.8)
             .extrude(-1.1)
             )
        w = (face.workplane(centerOption="CenterOfMass")
             .transformed(rotate=cq.Vector(45,0,0))
             .rect(choc_skirtXY[0],moduleZ-0.8)
             .extrude(5)
             )
        return cq.Workplane().add(b).add(w) - wp

choc_skirt and moduleZ are values I want to get from the injected wp.
07:00:01
@_discord_186253289476587521:t2bot.ioDraek#9615 Extrude doesn't care at what angle it is so if you put a worlplane oriented as you want it should work ? ( Or maybe there is a direction parameter for extrude I don't remember) 07:00:04
@_discord_332903554807234560:t2bot.ioqwelyt#8390 And the reason for the double extrude is because if I only do it in the positive direction it leaves a gap (where the seam is). 07:01:58
@_discord_332903554807234560:t2bot.ioqwelyt#8390 I could probably use the bounding box, but how do I get the faces bounding box and not the whole object that the face is attached to? 07:10:11
30 May 2023
@_discord_1113025047192412261:t2bot.iogam joined the room.08:44:34
@_discord_250074933193867264:t2bot.ioGambaru joined the room.08:46:05
@_discord_250074933193867264:t2bot.ioGambaru About to get started with cadquery but I'm concerned there's no examples for NURBS or spline surfaces like this video: https://www.youtube.com/watch?v=o_6jUmLkIM8

Is it tedious/impossible to do in cadquery?
08:50:27
@_discord_186253289476587521:t2bot.ioDraek#9615 Tedious yes, impossible no. Look at parametric surface in the docs 10:36:29
@_discord_186253289476587521:t2bot.ioDraek#9615 * Tedious yes, impossible no. Look at parametric surface in the docs 10:36:33
@_discord_899381592332582933:t2bot.iotobias-mierzwa joined the room.13:21:04
@_discord_899381592332582933:t2bot.iotobias-mierzwa Hey together, I have a question about using moveTo() together with pushPoints(). Is there a way that the moveTo() function use the pushed points and create the donut for each pushed point?

The current snippet is wrong and creates many donuts, depends on the number for quantity, on the moveTo() position.
cls.workplane.pushPoints(
                cls.__create_array_points(width, distance, quantity)
            )
            .moveTo(x,y)
            .circle(radius)
            .revolve()
        )
13:35:25
@_discord_899381592332582933:t2bot.iotobias-mierzwa * Hey together, I have a question about using moveTo() together with pushPoints(). Is there a way that the moveTo() function use the pushed points and create the donut for each pushed point?

My current snippet is wrong and creates many donuts, depends on the number for quantity, on the moveTo() position.
cls.workplane.pushPoints(
                cls.__create_array_points(width, distance, quantity)
            )
            .moveTo(x,y)
            .circle(radius)
            .revolve()
        )
13:35:44
@_discord_899381592332582933:t2bot.iotobias-mierzwa * Hey together, I have a question about using moveTo() together with pushPoints(). Is there a way that the moveTo() function use the pushed points and create the donut for each pushed point?

My current snippet is wrong and creates many donuts, depends on the number for quantity, on the moveTo() position.
cls.workplane.pushPoints(
                cls.__create_array_points(width, distance, quantity)
            )
            .moveTo(x,y)
            .circle(radius)
            .revolve()
        )


So solutions i can think of is either knowing how to create a donut without moveTo? Or using moveTo in a way that it moves to each point from __create_array_points ( that is the same like pushPoints()) and draw circle with revolve for a donut
13:37:24
@_discord_899381592332582933:t2bot.iotobias-mierzwa * Hey together, I have a question about using moveTo() together with pushPoints(). Is there a way that the moveTo() function use the pushed points and create the donut for each pushed point?

My current snippet is wrong and creates a lot of donuts, depending on the number for quantity, on the moveTo() position.
cls.workplane.pushPoints(
                cls.__create_array_points(width, distance, quantity)
            )
            .moveTo(x,y)
            .circle(radius)
            .revolve()
        )


So the solution I can think of is either knowing how to create a donut without using moveTo? Or use moveTo in a way that it moves to each point of __create_array_points (which is the same as pushPoints()) and draw a circle with revolve for a donut.
13:38:45
@_discord_899381592332582933:t2bot.iotobias-mierzwa * Hey together, I have a question about using moveTo() together with pushPoints(). Is there a way that the moveTo() function uses the pushed points and creates the donut for each pushed point?

My current snippet is wrong and creates a lot of donuts, depending on the number for quantity, on the moveTo() position.
cls.workplane.pushPoints(
                cls.__create_array_points(width, distance, quantity)
            )
            .moveTo(x,y)
            .circle(radius)
            .revolve()
        )


So the solution I can think of is either knowing how to create a donut without using moveTo? Or use moveTo in a way that it moves to each point of __create_array_points (which is the same as pushPoints()) and draw a circle with revolve for a donut.
13:39:06
@_discord_186253289476587521:t2bot.ioDraek#9615 Can you show the result of this ? I think you shouldn't use moveTo together with pushPoint, if you know how much you need to move each point why not setting them at this location directly? 14:05:17
@_discord_748602299936669917:t2bot.ioAlex Koen Anyone have success debugging openCASCADE from within cadquery? That is to say, calling a cq method that calls an OCP function and debugging the c++ code. 18:52:39
31 May 2023
@_discord_944119318554243094:t2bot.iosethfischer Have you tried something like this? https://stackoverflow.com/a/46169962 02:05:41
@_discord_748602299936669917:t2bot.ioAlex Koen Thank you I was trying something along these lines. Do you know if the opencascade bundled with OCP is compiled with debug symbols? 18:30:37
1 Jun 2023
@_discord_944119318554243094:t2bot.iosethfischer I don't know sorry. The answer may be here somewhere https://github.com/CadQuery/OCP/blob/master/build-bindings-job.yml#L140 04:47:10
@_discord_502756807027195915:t2bot.iopharzan joined the room.05:50:49
@niggerius:matrix.freyachat.euniggerius joined the room.10:46:49
@_discord_481019381623554049:t2bot.iocrides#7563 how can you loft ring faces to ring faces?
def ring(r, t, h):
    return cq.Workplane().circle(r).circle(r - t).extrude(h)

top = ring(3, 1, 1).translate((0, 0, 3))
show_object(ring(5, 1, 2).faces(">Z").wires().toPending().add(top.faces("<Z").wires()).toPending().loft())
this gives BRepFill :: profiles are inconsistent
17:00:20
@_discord_186253289476587521:t2bot.ioDraek#9615 You cant, you need to make two loft and cut one from the other 17:06:24
@_discord_481019381623554049:t2bot.iocrides#7563 ok, that works 17:10:56
@_discord_481019381623554049:t2bot.iocrides#7563 thanks 17:11:12

There are no newer messages yet.


Back to Room ListRoom Version: 6