Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 01/08/2021 in all areas

  1. Block Library is compatible with Dynamic Blocks. It is a utility for managing blocks by storing blocks and block slides images in Block Library folders. The library of block slide images can be viewed quickly in the Block Libraries, before inserting a block into a drawing. The Match Slide Game is included with Block Library. Block Library can be downloaded from https://autolisp-exchange.com
    2 points
  2. I've made insets, that is, close-ups of areas in the main plan. It's not hard, just create a second, smaller viewport and put it somewhere to the side. If you need to edit something inside the smaller viewport, select it and press the Paper/Model button. For bonus style points, create an object-type frame with a circle, put another circle around the source area, draw a line center to center, and trim it to the frames. If you don't have an open space to put your inset, use a polygonal viewport for the main frame and draw it around the inset. Here's a diagram:
    2 points
  3. A bachelors degree goes far - that's the power it has. And from what I've seen it really doesn't matter what the degree is in. The best construction manager I've ever worked with had a bachelors in aerospace engineering... In no way related. I know mechanical engineers that end up working in construction. I actually know one guy - funny story- he got a bachelors in civil engineering and then became a drafter as he learned he liked it more. But a 6 year degree shows you can take responsibility too. And the pay is better lol. If you do have a 6 year degree I also recommend checking out some of the opportunities on USAjobs.gov. There are alot of really important jobs there that require a degree to get paid well. Many of them are GSA positions that are guaranteed to be stable long term jobs. I also recommend checking out los alamos and lawrence livermore. I know some great people that work at both. They are doing important work behind the scenes. These positions do require a security clearance, however. And it's a long process. I applied at lawrence livermore a couple years ago. Im ex-military so I had a clearance for munitions systems from back then. I applied for the job in August 2017. In September 2018 I was told I was among 2 finalists for the job (13 months later). They ended up selecting the other guy. lol. And I knew a guy that worked there vouching for me too. BUT it is important work they are doing there and it supports the country. Work groups are isolated into "islands" if you will for security purposes. But dont' want to divulge too much. -ChriS
    2 points
  4. I made a short function that extends a line with an arc tangent to the line you selected. The function works exactly the same as continuing a polyline only lets you select an object to start with. Anyway, I decided to share it, so here it is: ; Extend line with a line tangent to it - dexus (defun c:tan (/ ang obj obj-end obj-start pt select-data tanpt ~cmd *error*) (defun *error* (msg) (setvar "cmdecho" ~cmd) (princ msg) (princ) ) (setq ~cmd (getvar "cmdecho")) (setvar "cmdecho" 0) (while (not select-data) (setq select-data (entsel "\nSelect line to extend: ")) (if select-data (progn (setq obj (vlax-ename->vla-object (car select-data)) obj-start (vlax-curve-getstartpoint obj) obj-end (vlax-curve-getendpoint obj) pt (trans (cadr select-data) 1 0)) (if (< (distance obj-start pt) (distance obj-end pt)) (setq tanpt obj-start ang (angle '(0 0 0) (vlax-curve-getfirstderiv obj (vlax-curve-getparamatpoint obj tanpt)))) (setq tanpt obj-end ang (angle (vlax-curve-getfirstderiv obj (vlax-curve-getparamatpoint obj tanpt)) '(0 0 0))) ) (command "_.line" "_none" (polar tanpt ang 50.0) "_none" tanpt "" "_erase" "_l" "" "_.pline" "_none" tanpt "_arc" pause) ) (princ "\nNothing was selected, Please select a line!")) ) (setvar "CMDECHO" ~CMD) (princ) ) Hope this is useful to some of you. It was for me since I have to draw a lot of shapes that are tangent.
    1 point
  5. Thank you for your kind words. I wish you every success in your new job. Good luck.
    1 point
  6. (defun C:test ( / sL SS pL cda cL ) (setq sL '((fuzz . 1e-2) (rad . 5) (cEl . 5) (cTY . 1))); settings (princ "\nSelect polylines: ") (if (setq SS (ssget "_:L-I" '((0 . "LWPOLYLINE")))) (setq pL (mapcar ''((e) (apply 'append (mapcar ''((x) (if (= 10 (car x)) (list (cdr x)))) (entget e)))) (vl-remove-if 'listp (mapcar 'cadr (ssnamex SS)))) sL (append sL '( (_cir (p c r) (entmakex (list '(0 . "CIRCLE") (cons 10 p) (cons 40 r) (cons 62 c)))) (cdrassoc (k L) (cdr (assoc k l))) ) ) cda (cdr (assoc 'cdrassoc sL)) SS (foreach p (apply 'append pL) (cond ( (vl-some ''((cp) (and (equal (cdr cp) p (cda 'fuzz sL)) (setq cL (subst (cons (1+ (car cp)) (cdr cp)) cp cL)))) cL) ) ( (setq cL (cons (cons 0 p) cL)) ) ); cond ); foreach SS (foreach p cL ( '((a b) (cond ( (< 0 a 2) ((cda '_cir sL) b (cda 'cEl sL) (cda 'rad sL)) ) ( (>= a 2) ((cda '_cir sL) b (cda 'cTY sL) (cda 'rad sL)) ) ( (and (= 0 a ) (vl-some ''( (ep) (equal ep b (cda 'fuzz sL))) (append (mapcar 'last pL) (mapcar 'car pL)))) ( (cda '_cir sL) b (cda 'cEl sL) (cda 'rad sL) ) ) ) ) (car p) (cdr p) ) ); foreach SS '(just playing around) ); setq ); and (princ) ); defun
    1 point
  7. Do as much googling as you can about the company and their products, sounds like an interesting job, good luck.
    1 point
  8. This should be more than enough to get the job done I believe. (defun c:Test ( / int sel ent get pts crd fnd ) ;; Tharwat - 07.Jan.2021 ;; (and (princ "\nSelect polylines : ") (setq int -1 sel (ssget '((0 . "LWPOLYLINE")))) (while (setq int (1+ int) ent (ssname sel int)) (setq get (entget ent) pts (cons (cdr (assoc 10 get)) pts) pts (cons (cdr (assoc 10 (reverse get))) pts) ) ) (while (setq crd (car pts)) (setq pts (cdr pts) fnd nil) (foreach itm pts (and (equal crd itm 1e-4) (setq fnd (cons itm fnd) pts (vl-remove itm pts) ) ) ) (setq fnd (cons crd fnd)) (entmake (list '(0 . "CIRCLE") (cons 10 crd) '(40 . 5.0) (cons 62 (if (<= (length fnd) 2) 5 1)))) ) ) (princ) )
    1 point
  9. You mean the intersection between the red line and all the white lines? Refer to our legend here: http://lee-mac.com/intersectionfunctions.html#intersectionsbetweensets It works fine to me when I tried inspecting: (LM:intersectionsbetweensets (ssget '((62 . 256))) (ssget '((62 . 1))))
    1 point
  10. Hello, something from me ;; Group by Number - Lee Mac ;; Groups a list 'l' into a list of lists, each of length 'n' (defun LM:group-n ( l n / r ) (if l (cons (reverse (repeat n (setq r (cons (car l) r) l (cdr l)) r)) (LM:group-n l n) ) ) ) (defun Circle (cen rad clr) (entmakex (list (cons 0 "CIRCLE") (cons 10 cen) (cons 40 rad) (cons 62 clr)))) ;Create from Georgi Georgiev - TRUDY ;Date 07.01.2021 (defun c:try1 ( / allpoint2 end1) (vl-load-com) (setq rad (getreal "\nSet radius: ")) (setq allcord '()) (setq sscord (ssget (list (cons 0 "LWPOLYLINE")))) (repeat (setq i (sslength sscord)) (setq Vname (vlax-ename->vla-object (ssname sscord (setq i (1- i))))) (setq tcord (vlax-get Vname 'coordinates)) (setq allcord (append tcord allcord)) (setq allcord2 (LM:group-n allcord 2)) (setq startL (car allcord2)) (setq endL (car (reverse allcord2))) (setq allcord2 nil allcord nil) (setq allpoint2 (append (append startL endL) allpoint2)) ) (setq allpoint3 (LM:group-n allpoint2 2)) (setq allpoint4 allpoint3) ;;;;;;;;;;; remove multiple (while allpoint3 (setq remM (cons (car allpoint3) remM)) (setq allpoint3 (vl-remove (car allpoint3) allpoint3)) ) (setq end2 '()) (repeat (length remM) (setq remM2 (car remM)) (setq allpoint5 allpoint4) (setq n 0) (repeat (length allpoint5) (if (equal remM2 (car allpoint5) 0.00001) (progn (setq n (+ n 1)) (setq end1 (cons n end1)))) (setq allpoint5 (cdr allpoint5)) ) (if end1 (setq end2 (cons (append remM2 (list (length end1))) end2))) (setq end1 nil) (setq remM (cdr remM)) ) (foreach x end2 (if (< 2 (nth 2 x)) (circle (list (nth 0 x) (nth 1 x)) rad 1) (circle (list (nth 0 x) (nth 1 x)) rad 5))) (princ) )
    1 point
  11. (defun c:test ( / 2col 2rad 3col 3rad lst n pt tol) (setq 2rad 5 ; <--- radius of circle when two intersecting points are found 2col acBlue ; <--- ACI color of circle when two intersecting points are found 3rad 5 ; <--- radius of circle when three intersecting points are found 3col acRed ; <--- ACI color of circle when three intersecting points are found tol 1e-7 ; <--- the tolerance between intersecting points to be considered equal ) (if (setq lst (apply 'append (mapcar '(lambda (x) (list (vlax-curve-getStartPoint x) (vlax-curve-getEndPoint x))) (JH:selset-to-list (ssget '((0 . "LWPOLYLINE")))) ) ) ) (while lst (setq pt (car lst) n (<= (- (length lst) (length (setq lst (vl-remove-if '(lambda (y) (equal y pt tol)) lst))) ) 2 ) ) (entmake (list '(0 . "CIRCLE") '(100 . "AcDbCircle") (cons 10 pt) (cons 40 (if n 2rad 3rad)) (cons 62 (if n 2col 3col)) ) ) ) ) (princ) ) ;; JH:selset-to-list --> Jonathan Handojo ;; Returns a list of entities from a selection set ;; ss - selection set (defun JH:selset-to-list (selset / lst iter) (if selset (repeat (setq iter (sslength selset)) (setq lst (cons (ssname selset (setq iter (1- iter))) lst)) ) ) )
    1 point
  12. Physical mac addresses will not change. Maybe they just need to change this: "select macaddress from win32_networkadapter where macaddress is not null" to this: "Select macaddress from Win32_NetworkAdapter where PhysicalAdapter=TRUE and macaddress is not null"
    1 point
  13. Today I made a tool for inserting blocks. Perhaps this is what the author is looking for. This is the beta version of the program. Example video use:
    1 point
×
×
  • Create New...