Thursday, April 16, 2009

AutoCAD & SSE2 Technology

AutoCAD & SSE2 Technology

If you look at the minimum hardware requirements for the Autodesk 2010 products, you’ll find they’re similar to the requirements for the 2009 products, with one exception - Autodesk is now requiring SSE2 technology.

In a nut-shell, SSE2 technology was introduced with the Pentium IV in 2001 and the AMD Opteron and Athlon 64 about 2 years later.

When code is, or was, written in earlier development platforms (like Microsoft Visual Studio) it was written in a particular format that older processors understand. But as processor architecture changed, somewhat of a translation had to take place in order for the same instructions to be carried out on newer processors. In effect, instructions sent to a processor of old, using a language of old, could result in numbers being improperly truncated and stored for future use when completed on newer processors. The greater the number of calculations, the greater the possibility for error - and not because of AutoCAD or Civil 3D per se, but simply because of the architecture of the processor and the platform used to develop the software.

Autodesk development platforms are catching up with processor architecture, mathematical computations in programs such as Civil 3D are becoming more complex, and Autodesk is simply hoping you have kept up with the trends.

CPUs supporting SSE2
AMD K8-based CPUs (Athlon 64, Sempron 64, Turion 64, etc)
AMD Phenom CPUs
Intel NetBurst-based CPUs (Pentium 4, Xeon, Celeron, Celeron D, etc)
Intel Pentium M and Celeron M
Intel Core-based CPUs (Core Duo, Core Solo, etc)
Intel Core 2-based CPUs (Core 2 Duo, Core 2 Quad, etc)
Intel Atom
Transmeta Efficeon
VIA Nano

You can type DXdiag into the run/search on the Windows Start button to see what you have.

AutoCAD Pline Widths in Revit

You want to Import or link an AutoCAD file with plines representing walls. The plines are set to the actual thickness of the wall. When this is imported into Revit the plines lose their thickness.

Changing the Revit lineweight is not the greatest solution because the lines change thickness based on scale. Also, you would have to do some calculations to get the corresponding width right.

You would be best to make the change in AutoCAD before you bring the file in. To that end I've attached a lsp routine which will convert plines to mlines with the corresponding width. You might want to add another string of code which explodes the mlines into lines because mlines don't come into Revit either.
Here's the thread where I found the lsp file written by Joe Burke...(note: this code leaves out closed segments, you will need to change the plines to 'open'.)

Here's a cut and paste of the code...

;;;thanks Joe Burke
(defun c:lml ()

;returns list associated with a DXF code
;arguments key: DXF code, alist: object data list
(defun massoc (key alist / x nlist)
(foreach x alist
(if (eq key (car x))
(setq nlist (cons (cdr x) nlist))
(reverse nlist)
) ;end

;(setq s (ssget))
(setq s (ssget '((0 . "LINE,LWPOLYLINE"))))
(setq teller 0)
(repeat (sslength s)
(setq en (ssname s teller))
(setq ent (entget en))
(if (= "LINE" (cdr (assoc 0 ent)))
(setq PtLst (list (cdr (assoc 10 ent)) (cdr (assoc 11 ent))))
) ;if
(if (= "LWPOLYLINE" (cdr (assoc 0 ent)))
(setq PtLst (massoc 10 ent))
) ;if
(command "mline" (foreach pt PtLst (command pt))) ;point list fed to
;(command "erase" en "")
(entdel en)
(setq teller (1+ teller))
) ;repeat
) ;end