Friday, October 31, 2008

Juggle 101: Part 3

Juggle 101: Part 3
So you have mastered the one ball basic pattern right?? Excellent! Now it is on to adding the second ball. You can place the third ball in your pocket so when you drop one of the other balls you will not have to bend over to pick it up. Remember to stand in your now favorite place over a couch and close to a wall if possible. Also remember to make your throws to yourself, do not throw them away from you (I mean really, how are you going to catch something that you threw away?). Juggling occurs in one plane.


Same thing goes for the second ball as the first ball. You will start with one ball in each hand. Start with the first ball as you have before; toss it from your LH to your RH hitting that peak above your RH. Always follow the infinity pattern. When the first ball reaches the peak of the pattern (just above your RH) toss the second ball from your RH to your LH following the pattern. If you have successfully ended up with the opposite ball in each hand than when you started congratulations!


Now pause and watch out for this….Most people who try to learn to juggle panic when they have to start tossing the second (and eventually third) ball. A lot of the time they will just quickly chuck the ball into the opposite hand for the second throw and that is not the objective. You must always follow the infinity pattern, this is the backbone of the 3-ball cascade pattern.


The typical mantra for this stage of learning is: throw, throw, catch, catch. Feel free to chant it. It actually does help.


The true key to learning how to juggle is practice! So keep practicing!!

HAPPY HALLOWEEN EVERYONE! :)

Monday, October 20, 2008

Warning Pop-up Update

Good morning Bloggers,

After initiating the pop-up warning for people opening any version below our current 2007 version we have had a lower rate of "oops" moments. I received feedback from the other departments and I have completely removed the "open" button. If someone really wants to overwrite the file they will have to go to the "saveas" and choose to overwrite it there.

The only flaw that I know of is that this will continue to pop-up and sometimes cause issues with the Publish command. Since 95% of the time we have to plot by window and can't use the Publish command on these old dwgs with the new plotter it is a moot point.

We had our reseller come in on Friday and do presentations on the 09 products for Arch and MEP and also discuss Revit (Arch, Struct, and MEP). Our company has some decisions to make as to which way they want to go and how soon.

Enjoy the fall season!

Thursday, October 09, 2008

Autodesk Univeristy 2008

As the temperatures try to turn cooler (we're still supposed to hit a high just under 80 degrees today...should be in the lower 70's this time of yr) I am reminded that soon AU will be here.

I am proud to announce that I will be attending AU this year!!!!

I am also signed up to attend the Blogger's Social on Tues...I'll have to slide in a little late since my class doesn't end until 4:30pm.

Looking forward to seeing you all there!

Wednesday, October 01, 2008

Success! Lower Version Warning Pop-up...

With much help from the people on AUGI I finially have what I was looking for.
The following LSP and DCL files will do the following:
When a Read-only copy of any dwg below 2007 is opened an alert button will appear stating that you've opened a dwg that is below an 07 version as read-only.
When a dwg has been opened fully that is below the 2007 version an alert button will appear stating the version number of the dwg that has been opened. Then a large and annoying pop-up will appear with 3 choices: Cancel, Convert to Read-only, or Open.
If they choose cancel, it closes out of the dwg completely (but does not affect any other dwgs they may have open).
If they choose read-only, it will close the original dwg and open a read-only copy of that dwg.
It will then show the "you've opened a read-only copy" alert again.
If they choose open, it will go ahead and open that dwg with full permissions.

This took quite a bit of work and I would like to share it if anyone would find it useful.
If you do use it, I ask that you do credit me with it.
Thank you!

LISP Code:
[code]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; This program is designed to be used with the warnr14.dcl file.
;; They are to be stored locally on the users' machine under the product's support file area.
;; I.E.: C:Program Files_Autodesk Building Systems 2007_Support
;; This program uses the slide image "WarnImage.sld" that is stored here: F:HBEDT2K7_Setup
;; It was created to pop-up a warning when a dwg of a lower version is opened in a 2007 product.
;; The user will get a choice to cancel out of the open, or go ahead with the open.
;; Currently this pop-up will appear if the file is opened full out or read-only.
;; It will not affect any dwgs that are already open in that session of Acad (ADT or ABS).
;; Please do not use-alter-modify this file without contacting Abbie Meador first.
;; Created by Abbie Meador.
;; Special thanks to the AUGI members who helped!
;; Last modified on 10-01-08 by Abbie Meador.
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(setq dwgfile (strcat (getvar "dwgprefix")(getvar "dwgname"))) ;;Setting value to dwfile variable, pulling info from dwg file
(setq rfile (open dwgfile "r")) ;;Set value to rfile
(setq dwgver (substr (read-line rfile) 1 6)) ;;Set value to dwgver by reading version info from dwg file
(close rfile) ;;Closes rfile where dwg version info was stored

(cond ;;Conditions to assign acadv variable text info based off of dwg version

((= dwgver "AC1021") ;;If it is a 2007 version dwg it will automatically close out of this lsp routine
(close)
)
((= dwgver "AC1014")
(setq acadv "AutoCAD R14")
)
((= dwgver "AC1012")
(setq acadv "AutoCAD R13")
)
((= dwgver "AC1009")
(setq acadv "AutoCAD R11 or R12")
)
((= dwgver "AC1006")
(setq acadv "AutoCAD R10")
)
((= dwgver "AC1004")
(setq acadv "AutoCAD R9")
)
((= dwgver "AC1002")
(setq acadv "AutoCAD R2.6")
)
((= dwgver "AC1.50")
(setq acadv "AutoCAD R2.05")
)
((= dwgver "AC1015")
(setq acadv "AutoCAD 2000")
)
((= dwgver "AC1016")
(setq acadv "AutoCAD 2000i")
)
((= dwgver "AC1017")
(setq acadv "AutoCAD 2002")
)
((= dwgver "AC1018")
(setq acadv "AutoCAD 2004")
)
((= dwgver "AC1019")
(setq acadv "AutoCAD 2005")
)
((= dwgver "AC1020")
(setq acadv "AutoCAD 2006")
)
;;;; ((= dwgver "AC1022") ;;For future use the 2008 ad 2009 version info is in here, but commented out
;;;; (setq acadv "AutoCAD 2008")
;;;; )
;;;; ((= dwgver "AC1023")
;;;; (setq acadv "AutoCAD 2009")
;;;; )

) ;;End of condition

(defun is_drawing_read_only (dwgver) ;;Checks to see if dwg has been opened as Read-Only
(if (eq(vla-get-readonly (vla-get-activedocument (vlax-get-acad-object))):vlax-true)
(progn
(if (not(or(or(= dwgver "AC1022")(= dwgver "AC1023"))(= dwgver "AC1021")))
(alert "Congratulations this is a READ-ONLY dwg.") ;;If dwg is Read-Only they get this alert
) ;;End of if
) ;;End of progn

(progn
(if (not(or(or(= dwgver "AC1022")(= dwgver "AC1023"))(= dwgver "AC1021")))
(progn
(alert acadv) ;;If dwg was fully opened they get an alert with the version
(drawing_is_read_write) ;;Calls the Read-Write subfunction
) ;;End of progn
) ;;End of if
) ;;End of progn
) ;;End of if
) ;;End of defun is_drawing_read_only

(defun drawing_is_read_write () ;;Read-Write subfunction
(setq mykey "sld") ;;Naming the slide image
(setq myslidename"F:\\HBEDT2K7\\Setup\\WarnImage.sld") ;;Locating the slide file

(setq dclid (load_dialog "warnr14.dcl")) ;;Loading the DCL file
(new_dialog "warnr14" dclid)
(defun edit_action1 (val)
(setq NT val)
) ;;End of defun

(setq width (dimx_tile mykey)) ;;Get the width of the slide
(setq height (dimy_tile mykey)) ;;Get the height of the slide
(start_image mykey) ;;Start the slide definition
(fill_image 0 0 width height -15) ;;Wipe out the background
(slide_image 0 0 width height myslidename) ;;Put the slide in the image area
(end_image) ;;Finish the slide definition

(action_tile "accept" "(unload_dialog)") ;;Closes dialog and leaves dwg open if Open button from DCL is clicked
(action_tile "readonly" "(setq DwgName (strcat (vla-get-path(vla-get-activedocument(vlax-get-acad-object))) \"/\" (vla-get-name(vla-get-activedocument(vlax-get-acad-object)))))
;;Opens a Read-only copy if the Read-only button is clicked
(done_dialog 1)")
(action_tile "cancel" "(done_dialog)") ;;Closes dialog and dwg if Cancel button from DCL is clicked

(set_tile "mytile" (strcat "YOU JUST OPENED AN " acadv " DWG IN 2007.")) ;;Creates tile to be used on DCL that shows version variable info
(setq ans(start_dialog)) ;;Gets value for ans variable
(unload_dialog dclid)
(if (= ans 1)
(progn ;;This runs a script to close the fully opened original dwg
(setq scrFile (open (strcat (getvar "dwgprefix") "Runme.scr") "w"))
(write-line "(vla-open (vla-get-documents (vlax-get-acad-object))Dwgname :VLAX-TRUE)" scrfile)
(write-line ".close" scrFile)
(write-line "Y" scrFile)
(write-line "(vl-file-delete (strcat (getvar \"dwgprefix\") \"Runme.scr\"))"scrfile)
(close scrFile)
(command ".script" (strcat (getvar "dwgprefix") "Runme.scr")) ;Run the script
) ;;End of progn
(progn
(done_dialog) ;;Finishes dialog box
(command "_.close" "Y") ;;Closes dwg and answers yes to do you really want to close this file question
) ;;End of progn
) ;;End of if
) ;;End of defun drawing_is_read_write

(is_drawing_read_only dwgver)

;;;;
;;;;End of the AutoLISP routine
;;;;
[/code]

DCL Code:
[code]
////////////////////////////////////////////////////////////////////////////////////////////////////
//
// This program is designed to be used with the acaddoc.lsp file.
// They are to be stored locally on the users' machine under the product's support file area.
// I.E.: C:Program Files_Autodesk Building Systems 2007_Support
// This program uses the slide image "WarnImage.sld" that is stored here: F:HBEDT2K7_Setup
// It was created to pop-up a warning when a dwg of a lower version is opened in a 2007 product.
// The user will get a choice to cancel out of the open, or go ahead with the open.
// Currently this pop-up will appear if the file is opened full out or read-only.
// It will not affect any dwgs that are already open in that session of Acad (ADT or ABS).
// Please do not use-alter-modify this file without contacting Abbie Meador first.
// Created by Abbie Meador.
// Special thanks to the AUGI members who helped!
// Last modified on 10-01-08 by Abbie Meador.
//
/////////////////////////////////////////////////////////////////////////////////////////////////////

warnr14 : dialog {label = "WARNING!!! WARNING!!!"; //Controls the text on the pop-up's title

: image { //This creates a stripe or bar of color along the top
key = "im"; //Creating a variable called "im" for this stripe
height = 1.0; //Setting height of stripe to 1
width = 1.0; //Setting width of stripe to 1
color = 1; //Setting color of stripe to 1 = Red
} //Ends stripe "im" creation

:row{ //Creates a row
: image { //Adds in the image from the LSP for the Slide
key = "sld"; //Calls the slide image
height = 0; //Sets the height of the image
width = 15; //Sets the width of the image
color = -15; //Sets the color to the background color -15 = grey
is_enabled = false;
is_tab_stop = false;
} //Ends row for image slide

: paragraph { //Begins a paragraph of text
: text { key = "mytile"; } //Calls the tile created in the LSP to print out in a text line
: text { //If you use text_part { the text lines squish together, this way they have some air b/w them.
label = "Click -Cancel- or -Read-only- to keep from converting your file to an 07 format.";
}
: text {
label = "If you ignore this warning and end up saving this as a 2007 dwg,";
}
: text {
label = "YOU WILL REPAIR THIS FILE ON YOUR OWN TIME!!";
}
} //End paragraph of text
} //End of row

: image { //This creates a stripe or bar of color underneath the paragraph text
key = "im2"; //Creating a variable called "im2" for this stripe
height = 1.0; //Setting height of stripe to 1
width = 1.0; //Setting width of stripe to 1
color = 1; //Setting color of stripe to 1 = Red
} //Ends stripe "im2" creation

: row { //Begins row for buttons
: button { //Begins first button creation
label = "CANCEL"; //Labels first button cancel
key = "cancel"; //Attaches a call of cancel to the button
mnemonic = "C"; //Sets up a keyboard shortcut for the button
alignment = centered; //Alignment of the button
width = 1.0; //Sets width of button
height = 3.0; //Sets height of button
is_default = true; //Sets the default selection to this button...If user hits enter this button will be selected
} //Ends first button


: button { //Begins second button creation
fixed_width = true; //Sets a fixed width of button
fixed_height = true; //Sets a fixed height of button
label = "Read-Only"; //Labels second button open
key = "readonly"; //Attaches a call of readonly to the button
mnemonic = "R"; //Sets up a keyboard shortcut for the button
} //Ends second button


: button { //Begins third button creation
fixed_width = true; //Sets a fixed width of button
fixed_height = true; //Sets a fixed height of button
label = "Open"; //Labels third button open
key = "accept"; //Attaches a call of accept to the button
mnemonic = "O"; //Sets up a keyboard shortcut for the button
} //Ends third button
} //Ends row
} //Ends program
[/code]