the first line creates circle with center located at the point ( and radius of notice that we used the point constructor to create location for the first parameter to the circle constructor the second line creates graphwin do you see what is happening in the third linethis is request for the circle object circ to draw itself into the graphwin object win the visible effect of this statement is circle in the graphwin centered at ( and having radius of behind the scenesa lot more is happening rememberthe draw method lives inside the circ object using information about the center and radius of the circle from the instance variablesthe draw method issues an appropriate sequence of low-level drawing commands ( sequence of method invocationsto the graphwin conceptual picture of the interactions among the pointcircle and graphwin objects is shown in figure fortunatelywe don' usually have to worry about these kinds of detailsthey're all taken care of by the graphical objects we just create objectscall the appropriate methodsand let them do the work that' the power of object-oriented programming circle circpoint centerradiusdraw low-level drawing commands graphwin winfigure object interactions to draw circle there is one subtle "gotchathat you need to keep in mind when using objects it is possible for two different variables to refer to exactly the same objectchanges made to the object through one variable will also be visible to the other suppose we are trying to write sequence of code that draws smiley face we want to create two eyes that are units apart here is sequence of code intended to draw the eyes #incorrect way to create two circles lefteye circle(point( ) lefteye setfill('yellow'lefteye setoutline('red'