Aggregate Polygons

Does anyone know of tool that moves polygons toward each other so that they are all adjacent to one another in a grouping? For example, say you have a bunch of polygons in a layer scattered across your screen and the tool would automatically move all the polygons so that they retain their shape and size, but are now adjacent to each other, preferably edges touching. It doesn't have to be super accurate I just want all my scattered polygons to line up with each other, sort of like the game Tetris.
This doesn't necessarily have to be done in Illustrator, I'm just casting a wide net to see what tools are out there. Perhaps there's something in AutoCAD that can do this. Also, hopefully this question makes sense. My background is in GIS and I don't have too much experience with Illustrator.

Not getting the results I wanted. I have about 1000 odd shaped polygons of various size.
Original:
Output:
Perhaps if I only select 10-20 polygons at a time?

Similar Messages

  • SDO_AGGR_UNION crashes the session

    Hi!
    I am developing a PL/SQL overlay module to overlay two polygon layers (+ some additional logic). I also use SDO_AGGR_UNION function, which aggregates polygons previously created by SDO_INTERSECTION function.
    At this point session crashes with "end-of-file on communication chanel". When debugging, I realised, that SDO_INTERSECTION produced invalid polygon from valid input polygons. In some case,s playing with tolerances, helps that crash does not occur. But produces crashes at other cases.
    I have Oracle Database 10g Enterprise Edition Release 10.1.0.4.0.
    Any idea, what is wrong or how to handle "end-of-file on communication chanel" as exception?
    Regards, Saso

    Saso,
    I'd bet real money that this is related to the issue we've been having, and working with Oracle to resolve, on SDO_UNION:
    SDO_UNION EOF on communications channel
    No, you cannot do anything to trap this problem in the database as the database session has crashed (core dumped).
    Bryan

  • Index's on cubes or Aggregates on infoobjects

    Hello,
    Please tell me if it is possible to put index's on cubes; are they automatically added or is this something I put on them?
    I do not understand index's are they like aggregates?
    Need to find info that explains this.
    Thanks for the hlep.
    Newbie

    Indexes are quite different from aggregates.
    An Aggregate is a slice of a cube which helps the data retrival on a faster note when a query is executed on a cube. Basically it is kind of a snapshot of KPI's and Business Indicators (Chars) which will be displayed as the initial query run result.
    Index is a process which is inturn will reduce the query response time. While an object gets activated, the system automatically create primary indexes. Optionaly, you can create additional index called secondary indexes.Before loading data, it is advisable to delete the indexes and insert them back after the loading.
    Indexes act like pointers for quickly geting the Data.When u delete it will delete indexes and when u create it will create the indexes.
    When loading we delete Bcs during loading it has to look for existing Indexes and try to update so it will effect the Data load performence so we delete and create it will take less time when compared to updating the existing ones.
    There is one more issue we have to take care if u r having more than 50 million records this is not a good practice insteah we can delete and create during week end when they r no users.

  • Polygonal lasso tool not working with stylus on Surface Pro 2

    Hi guys,
    I'm new here so please bare with me if I'm posting in the wrong place or don't make immediate sense.
    Hardeware / software used: surface pro 2 and I'm running photoshop CS5.
    Problem is a fairly basic one: I am trying to make basic selections using the polygonal lasso tool (using the stylus that comes with the tablet) but it simply will not work. All I get when I touch the stylus to the screen is the circle that appears then fades. If I attach the keypad and try using that then it works no problem at all.
    Does anyone have any ideas as to whether there is a particular setting that I need to switch on or off e.g. something relating to pressure sensitivity (although not sure why this would affect this particular selection tool)?
    I've searched the web and come up with nothing so far so any help is greatly appreciated!
    Thanks for your time
    Scott

    same problem on surface pro 3 !!!!
    and i think quite significant, for lot of artists using polygonal lasso a lot (including me). How come that the stupid surface cannot work properly

  • How can I see the data in the aggregates

    how can see the data available in the aggregates.
    Jay

    Hi Jay,
    its so simple,
    please goto the manage aggregates screen and copy the technical name of the aggregate and add
    /bic/exxx  xxx is the aggregate technical name, and for f fat table use /bic/fxxx, and go to se16 and enter the table name and thats it ur data is with u.
    R

  • Aggregates, VLAN's, Jumbo-Frames and cluster interconnect opinions

    Hi All,
    I'm reviewing my options for a new cluster configuration and would like the opinions of people with more expertise than myself out there.
    What I have in mind as follows:
    2 x X4170 servers with 8 x NIC's in each.
    On each 4170 I was going to configure 2 aggregates with 3 nics in each aggregate as follows
    igb0 device in aggr1
    igb1 device in aggr1
    igb2 device in aggr1
    igb3 stand-alone device for iSCSI network
    e1000g0 device in aggr2
    e1000g1 device in aggr2
    e1000g2 device in aggr3
    e1000g3 stand-alone device of iSCSI network
    Now, on top of these aggregates, I was planning on creating VLAN interfaces which will allow me to connect to our two "public" network segments and for the cluster heartbeat network.
    I was then going to configure the vlan's in an IPMP group for failover. I know there are some questions around that configuration in the sense that IPMP will not detect a nic failure if a NIC goes offline in the aggregate, but I could monitor that in a different manner.
    At this point, my questions are:
    [1] Are vlan's, on top of aggregates, supported withing Solaris Cluster? I've not seen anything in the documentation to mention that it is, or is not for that matter. I see that vlan's are supported, inluding support for cluster interconnects over vlan's.
    Now with the standalone interface I want to enable jumbo frames, but I've noticed that the igb.conf file has a global setting for all nic ports, whereas I can enable it for a single nic port in the e1000g.conf kernel driver. My questions are as follows:
    [2] What is the general feeling with mixing mtu sizes on the same lan/vlan? Ive seen some comments that this is not a good idea, and some say that it doesnt cause a problem.
    [3] If the underlying nic, igb0-2 (aggr1) for example, has 9k mtu enabled, I can force the mtu size (1500) for "normal" networks on the vlan interfaces pointing to my "public" network and cluster interconnect vlan. Does anyone have experience of this causing any issues?
    Thanks in advance for all comments/suggestions.

    For 1) the question is really "Do I need to enable Jumbo Frames if I don't want to use them (neither public nore private network)" - the answer is no.
    For 2) each cluster needs to have its own seperate set of VLANs.
    Greets
    Thorsten

  • Aggregates on Non-cumulative InfoCubes, stock key figures, stock, stocks,

    Hi..Guru's
    Please let me know if  anybody has created aggregates on Non-Cumulative Cubes or key figure (i.e. 0IC_C03 Inventory Management.)
    I am facing the problem of performance related at the time of execution of query in 0IC_C03.( runtime dump )
    I have tried lot on to create aggregate by using proposal from query and other options. But its not working or using that aggr by query.
    Can somebody tell me about any sample aggr. which they are using on 0ic_c03.
    Or any tool to get better performance to execute query of the said cube.
    One more clarification req that what is Move the Marker pointer for stock calculation. I have compressed only two inital data loading req. should I compress the all req in cube (Regularly)
    If so there would be any option to get req compress automatically after successfully load in data target.
    We are using all three data sources 2lis_03_bx,bf & um for the same.
    Regards,
    Navin

    Hi,
    Definately the compression has lot of effect on the quey execution time for Inventory cubes <b>than</b> other cumulated cubes.
    So Do compression reqularly, once you feel that the deletion of request is not needed any more.
    And ,If the query do not has calday characterstic and need only month characterstic ,use Snap shot Info cube(which is mentioned and procedure is given in How to paper) and divert the month wise(and higher granularity on time characterstic ,like quarter & year) queries to this cube.
    And, the percentage of improvement in qury execution time in case of aggregates is less for non cumulated cubes when compared to other normal(cumulated) cubes. But still there is improvement in using aggregates.
    With rgds,
    Anil Kumar Sharma .P
    Message was edited by: Anil Kumar Sharma

  • Re: How to Improve the performance on Rollup of Aggregates for PCA Infocube

    Hi BW Guru's,
    I have unresolved issue and our team is still working on it.
    I have already posted several questions on this but not clear on how to reduce the time on Rollup of Aggregates process.
    I have requested for OSS note and searching myself but still could not found.
    Finally i have executed one of the cube in RSRV with the database selection
    "Database indexes of an InfoCube and its aggregates"  and got warning messages i was tried to correct the error and executed once again but still i found warning message. and the error message are as follows: (this is only for one info cube we got 6 info cubes i am executing one by one).
    ORACLE: Index /BI0/IACCOUNT~0 has possibly degenerated
    ORACLE: Index /BI0/IPROFIT_CTR~0 has possibly degenerated     
    ORACLE: Index /BI0/SREQUID~0 has possibly degenerated
    ORACLE: Index /BIC/D1001072~010 has possibly degenerated
    ORACLE: Index /BIC/D1001132~010 has possibly degenerated
    ORACLE: Index /BIC/D1001212~010 has possibly degenerated
    ORACLE: Index /BIC/DGPCOGC062~01 has possibly degenerated
    ORACLE: Index /BIC/IGGRA_CODE~0 has possibly degenerated
    ORACLE: Index /BIC/QGMAPGP1~0 has possibly degenerated
    ORACLE: Index /BIC/QGMAPPC2~0 has possibly degenerated
    ORACLE: Index /BIC/SGMAPGP1~0 has possibly degenerated
    i don't know how to move further on this can any one tell me how to tackle this problem to increase the performance on Rollup of Aggregates (PCA Info cubes).
    every time i use to create index and statistics regularly to improve the performance it will work for couple of days and again the performance of the rollup of aggregates come down gradually.
    Thanks and Regards,
    Venkat

    hi,
    check in a sql client the sql created by Bi and the query that you use directy from your physical layer...
    The time between these 2 must be 2-3 seconds,otherwise you have problems.(these seconds are for scripts that needed by Bi)
    If you use "like" in your sql then forget indexes....
    For more informations about indexes check google or your Dba .
    Last, i mentioned that materialize view is not perfect,it help a lot..so why not try to split it to smaller ones....
    ex...
    logiacal dimensions
    year-half-day
    company-department
    fact
    quantity
    instead of making one...make 3,
    year - department - quantity
    half - department - quantity
    day - department - quantity
    and add them as datasource and assign them the appropriate logical level at bussiness layer in administrator...
    Do you use partioning functionality???
    i hope i helped....
    http://greekoraclebi.blogspot.com/
    ///////////////////////////////////////

  • Questions regarding aggregates on cubes

    Can someone please answer the following questions.
    1. How do I check whether someone is re-bilding aggregates on a cube?
    2. Does rebuilding an aggregate refer to the rollup process? Can it take a few hours?
    3. What does it mean when someone switches off an aggregate, basically what is the difference (conceptually/time consumption)between:
                            A. activating an aggregate?
                            B. switching off/on an aggregate?
                            C. rebuilding an aggregate?
    3. When a user complains that a query is running slow, do we build an aggregate based on the chars in rows & free chars in that query OR is there anything else we need to include?
    4. Does database statistics in the 'MANAGE' tab of a cube only show statistics or does it do anything to improve the load/query performance on the cube?
    Regards,
    Srinivas.

    1. How do I check whether someone is re-bilding aggregates on a cube?
    If your aggregate status is in red and you are filling up the aggregate - it is an initial fill of the aggregate and filling up would mean loading the data from the cube into the aggregate in full.
    2. Does rebuilding an aggregate refer to the rollup process? Can it take a few hours?
    Rebuilding of an aggregate is to reload the data into the aggregate from the cube once again.
    3. What does it mean when someone switches off an aggregate, basically what is the difference (conceptually/time consumption)between:
    A. activating an aggregate?
    this would mean recreating the data structures for the aggregate - this would mean dropping the data and reloading the data.
    B. switching off/on an aggregate?
    Switching off an aggregate means that it will not be used by the OLAp processor but would mean that the aggregate still gets rolled up. Rollup referring to loading changed data from the cube into the aggregate - this is done based n the requests that have not yet been rolled up into the cube.
    C. rebuilding an aggregate?
    Reloading data into the aggregate
    3. When a user complains that a query is running slow, do we build an aggregate based on the chars in rows & free chars in that query OR is there anything else we need to include?
    Run the query in RSRT and do an SQl view of the query and check the characteristics that are used in the query and then include the same into your aggregate.
    4. Does database statistics in the 'MANAGE' tab of a cube only show statistics or does it do anything to improve the load/query performance on the cube?
    Stats being updated will improve the execution plans on the database. Making sure that stats are up to date would lead to better execution plans and hence possibly better performance but it cannot eb taken for granted that refreshing stats is going to improve query performance.

  • How to find a polygon that contains a point

    I have a table that has the boundaries (polygones) for all the zip codes in my state and I want to find the zip code that contains the given LON/LAT
    The following query is aparently not valid:
    SELECT *
    FROM ZIP_BOUNDARY b
    WHERE sdo_relate(b.geom, SDO_POINT_TYPE(-122.079155, 37.392892, NULL),'mask=touch') = 'TRUE'
    WHERE sdo_relate(b.geom, SDO_POINT_TYPE(-122.079155, 37.392892, NULL),'mask=touch') = 'TRUE'
    ERROR at line 5:
    ORA-29900: operator binding does not exist
    ORA-06553: PLS-306: wrong number or types of arguments in call to 'SDO_RELATE'
    What is the correct way to write such a query?

    try the following:
    SELECT *
    FROM ZIP_BOUNDARY b
    WHERE sdo_relate(b.geom, sdo_geometry(2001, YOUR_SRID, SDO_POINT_TYPE(-122.079155, 37.392892, NULL), NULL, NULL), 'mask=CONTAINS') = 'TRUE';

  • Calculating the length of the longest side of a polygon

    If you want to calculate the length of the longest side of a polygon -- for example a rectangle -- how can that be done using the standard geometrical functions of spatial in an oracle 10g2 database?
    SDO_LENGHT delivers the outline of the polygon. If have looked at the LRS functions, but could not come up with a combination that delivers me what I am looking for. Any suggestion is appreciated.

    What do you see as the longest side?
    Is that the longest stretch between 2 consecutive vertices?
    If this is the case, this sql could be of help, which could need maybe some optimisation and extension (calculates straigth distance between 2 consecutive vertices).
    select id, p_side_nr, p_side,  p_side_length
    from
    select id,  p_side_nr, p_side, sdo_geom.sdo_length(p_side, 0.005) p_side_length,  max(sdo_geom.sdo_length(p_side, 0.005)) over (partition by id) max_p_side_length
    from
    select id, p_side_nr,
           sdo_geometry(2002, NULL, NULL,
                 SDO_ELEM_INFO_ARRAY(1,2,1),
                 SDO_ORDINATE_ARRAY(startx, starty, endx, endy)
                ) p_side
    from
         select
               startp.id, startp.x startx, startp.y starty, startp.v_id p_side_nr, endp.x endx, endp.y endy, endp.v_id
         from
              select  s.id, t.id v_id, t.x, t.y
              from your_table_name s, table(sdo_util.getvertices(geometry)) t
              ) startp
              select s.id, t.id v_id, t.x, t.y
              from your_table_name s, table(sdo_util.getvertices(geometry)) t
              ) endp
         where startp.id = endp.id
         and startp.v_id = endp.v_id - 1
    ) where p_side_length = max_p_side_lengthif you do not need the geometry of that longest side, you could follow Ivan's suggestion as a shortcut by using Pythagoras.
    Edited by: lucvanlinden on Sep 2, 2008 7:48 PM

  • Polygon Line (Stroke Size)

    Hello,
    A friend in this forum once helped me to sort out a problem in the code below. The problem then was that I wanted to increase the stroke size of polygon lines. The polygon points represent cities. The example then was based on 2 cities and the code worked. Now I increased it to 3 cities but the result is wrong.
    package graphic;
    import java.awt.Color;
    import java.awt.Graphics2D;
    import java.awt.Polygon;
    import java.awt.image.BufferedImage;
    import java.util.*;
    import javax.swing.ImageIcon;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import java.awt.geom.*;
    import java.awt.BasicStroke;
    import java.awt.RenderingHints;
    public class DrawCliqueTest {
         public static void main(String[] args) {
              try {
                   JFrame frame = new JFrame();
                   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                   BufferedImage image = new BufferedImage(400, 300,
                                                     BufferedImage.TYPE_INT_RGB);
                   Graphics2D g = image.createGraphics();
                   g.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
                             RenderingHints.VALUE_ANTIALIAS_ON);
                   g.setColor(Color.WHITE);
                   g.fillRect(0, 0, image.getWidth(), image.getHeight());          
                   g.setColor(Color.BLACK);
                   List<String[]> StringElements = new ArrayList<String[]>();
                   String[] Elem1 = {"Wahington","Chicago","London"};
                   String[] Elem2 = {"Washington","Tokyo","London","Chicago"};
                   StringElements.add(Elem1);
                   StringElements.add(Elem2);
                   List<int[]> Xlist = new ArrayList<int[]>();
                   int[] xPoint1 = {150,278,250};
                   int[] xPoint2 = {150,50,250,278};
                   Xlist.add(xPoint1);
                   Xlist.add(xPoint2);
                   List<int[]>Ylist = new ArrayList<int[]>();
                   int[] yPoint1 = {50,80,203};
                   int[] yPoint2 = {50,200,203,80};
                   Ylist.add(yPoint1);
                   Ylist.add(yPoint2);
                   ArrayList<Polygon> list = new ArrayList<Polygon>();
                   list.add(new Polygon(new int[] {150, 278,250}, new int[] {50, 80,203}, 3));
                   list.add(new Polygon(new int[] {150, 50, 250, 278},
                                           new int[] {50, 200, 203, 80}, 4));
                   //Draw the Strings
                   for(int i = 0; i < StringElements.size(); i++) {
                        for(int j = 0; j < StringElements.get(i).length; j++) {
                             g.setColor(Color.RED);
                             g.drawString(StringElements.get(i)[j], Xlist.get(i)[j],
                                                           Ylist.get(i)[j]);
                   // Draw a line between every pair of points
                   for (Polygon poly : list) {
                        for (int i = 0; i < poly.npoints-1; i++) {
                             for (int j = i+1; j < poly.npoints; j++) {
                                  g.setColor(Color.BLACK);
                                  //if((i == 0 && j == 3) || (i == 1 && j == 0))
                                  if(((i==0 && j==3) ||(i==0 && j==2))||((i==1 && j==0)||(i==1 && j==2))||((i==2 && j==0 ||(i==2 && j==3))))
                                       g.setStroke(new BasicStroke(2f));
                                  else
                                       g.setStroke(new BasicStroke(1f));
                                  g.drawLine(poly.xpoints, poly.ypoints[i],poly.xpoints[j], poly.ypoints[j]);
                   g.dispose();
                   frame.add(new JLabel(new ImageIcon(image)));
                   frame.pack();
                   frame.setVisible(true);
              } catch(Exception e) { e.printStackTrace(); }
    The program is meant to check the elements in each array of the ArrayList "StringElements" and get the strongly connected cities (the same cities that are in both arrays; Elem1 and Elem2. .
    If you run the code, it draws the connections between London->Washington, London->Chicago and London->Tokyo with a stroke size 2 and the rest with stroke size 1. But, London->Tokyo is not suppose to be drawn with stroke size 2 because Tokyo is not in Elem1.
    My plans is to implement this line of the code which is my problem point: if(((i==0 && j==3) ||(i==0 && j==2))||((i==1 && j==0)||(i==1 && j==2))||((i==2 && j==0 ||(i==2 && j==3)))) dynamically but the static version is not even working.
    Any solution or idea on how to overcome this problem?
    Thanks,
    Jona_T

    import java.awt.Color;
    import java.awt.Graphics2D;
    import java.awt.Polygon;
    import java.awt.image.BufferedImage;
    import java.util.*;
    import javax.swing.ImageIcon;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import java.awt.geom.*;
    import java.awt.BasicStroke;
    import java.awt.RenderingHints;
    public class DCT {
        public static void main(String[] args) {
            JFrame frame = new JFrame();
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            BufferedImage image = new BufferedImage(400, 300,
                                          BufferedImage.TYPE_INT_RGB);
            Graphics2D g = image.createGraphics();
            g.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
                               RenderingHints.VALUE_ANTIALIAS_ON);
            g.setColor(Color.WHITE);
            g.fillRect(0, 0, image.getWidth(), image.getHeight());          
            g.setColor(Color.BLACK);
            List<String[]> StringElements = new ArrayList<String[]>();
            String[] Elem1 = {"Washington","Chicago","London"};
            String[] Elem2 = {"Washington","Tokyo","London","Chicago"};
            StringElements.add(Elem1);
            StringElements.add(Elem2);
            List<int[]> Xlist = new ArrayList<int[]>();
            int[] xPoint1 = {150,278,250};
            int[] xPoint2 = {150,50,250,278};
            Xlist.add(xPoint1);
            Xlist.add(xPoint2);
            List<int[]>Ylist = new ArrayList<int[]>();
            int[] yPoint1 = {50,80,203};
            int[] yPoint2 = {50,200,203,80};
            Ylist.add(yPoint1);
            Ylist.add(yPoint2);
            ArrayList<Polygon> list = new ArrayList<Polygon>();
            list.add(new Polygon(new int[] {150, 278, 250},
                                 new int[] { 50,  80, 203}, 3));
            list.add(new Polygon(new int[] {150,  50, 250, 278},
                                 new int[] { 50, 200, 203,  80}, 4));
             //Draw the Strings
             for(int i = 0; i < StringElements.size(); i++) {
                 for(int j = 0; j < StringElements.get(i).length; j++) {
                     g.setColor(Color.RED);
                     g.drawString(StringElements.get(i)[j], Xlist.get(i)[j],
                                                            Ylist.get(i)[j]);
             // Draw a line between every pair of points in each polygon.
             for(int i = 0; i < list.size(); i++) {
                 Polygon poly = (Polygon)list.get(i);
                 for (int j = 0; j < poly.npoints; j++) {
                     for (int k = j+1; k < poly.npoints; k++) {
                         g.setColor(Color.BLACK);
                         // Use heavy Stroke if route is duplicated.
                         if(isDuplicated(i, j, k, StringElements))
                             g.setStroke(new BasicStroke(2f));
                         else
                             g.setStroke(new BasicStroke(1f));
                         g.drawLine(poly.xpoints[j], poly.ypoints[j],
                                    poly.xpoints[k], poly.ypoints[k]);
             g.dispose();
             frame.add(new JLabel(new ImageIcon(image)));
             frame.pack();
             frame.setVisible(true);
        private static boolean isDuplicated(int elementIndex, int origIndex,
                                   int destIndex, List<String[]> StringElements) {
            // Look for cities in StringElements.get(elementIndex) located
            // at [origIndex] and [destIndex] in the other StringElement arrays.
            String[] elementCities = StringElements.get(elementIndex);
            String orig = elementCities[origIndex];
            //System.out.println("orig = " + orig);
            String dest = elementCities[destIndex];
            //System.out.println("dest = " + dest);
            // If we find both the orig and dest cities in any other
            // element of StringElements return true.
            for(int j = 0; j < StringElements.size(); j++) {
                if(j == elementIndex)
                    continue;
                String[] element = StringElements.get(j);
                if(contains(element, orig) && contains(element, dest))
                    return true;
            return false;
        private static boolean contains(String[] circuit, String city) {
            for(int j = 0; j < circuit.length; j++) {
                if(city.equals(circuit[j]))
                    return true;
            return false;
    }

  • Creating a triangle using polygon class problem, URGENT??

    Hi i am creating a triangle using polygon class which will eventually be used in a game where by a user clicks on the screen and triangles appear.
    class MainWindow extends Frame
         private Polygon[] m_polyTriangleArr;
                       MainWindow()
                              m_nTrianglesToDraw = 0;
             m_nTrianglesDrawn = 0;
                             m_polyTriangleArr = new Polygon[15];
                             addMouseListener(new MouseCatcher() );
            setVisible(true);
                         class MouseCatcher extends MouseAdapter
                             public void mousePressed(MouseEvent evt)
                  Point ptMouse = new Point();
                  ptMouse = evt.getPoint();
                if(m_nTrianglesDrawn < m_nTrianglesToDraw)
                                int npoints = 3;
                        m_polyTriangleArr[m_nTrianglesDrawn]
                      = new Polygon( ptMouse[].x, ptMouse[].y, npoints);
    }When i compile my code i get the following error message:
    Class Expected
    ')' expectedThe two error messages are refering to the section new Polygon(....)
    line. Please help

    Cannot find symbol constructor Polygon(int, int, int)
    Can some one tell me where this needs to go and what i should generally
    look like pleaseI don't think it is a good idea to try and add the constructor that the compiler
    can't find. Instead you should use the constructor that already exists
    in the Polygon class: ie the one that looks like Polygon(int[], int[], int).
    But this requires you to pass two int arrays and not two ints as you
    are doing at the moment. As you have seen, evt.getPoint() only supplies
    you with a single pair of ints: the x- and y-coordinates of where the mouse
    button was pressed.
    And this is the root of the problem. To draw a triangle you need three
    points. From these three points you can build up two arrays: one containing
    the x-coordinates and one containing the y-coordinates. It is these two
    arrays that will be used as the first two arguments to the Polygon constructor.
    So your task is to figure out how you can respond to mouse presses
    correctly, and only try and add a new triangle when you have all three of its
    vertices.
    [Edit] This assumes that you expect the user to specify all three vertices of the
    triangle. If this isn't the case, say what you do expect.

  • Creating a triangle using polygon class problem?

    Hi i am trying to create a triangle with the polygon class. If successful, the user should be able to click on the screen and triangles should appear.
    private Polygon[] m_polyTriangleArr;
    MainWindow()
      m_polyTriangleArr = new Polygon[15];
    class MouseCatcher extends MouseAdapter
          public void mousePressed(MouseEvent evt)
                    Point ptMouse = new Point();
                    ptMouse = evt.getPoint();
                              if(m_nTrianglesDrawn < m_nTrianglesToDraw)
                         int npoints = 3;
                                               m_polyTriangleArr[m_nTrianglesDrawn]
                    = new Polygon( ptMouse.x, ptMouse.y, npoints);
                            m_nTrianglesDrawn++;
                        m_bMouse = true;
                        repaint();
            }Paint section
    public void paint(Graphics gc)
                  if(m_bMouse)
              gc.setColor(Color.green);
              for( int i = 0; i < m_nTrianglesDrawn; i++)
              gc.fillPolygon(m_polyTriangleArr.x, m_polyTriangleArr[i].y, npoints);
    When i try to compile my code i get the following error message:
    Cannot find symbol constructor Polygon(int, int, int)
    --- find symbol variable x
    --- find symbol variable y
    --- find symbol variable npoints.
    Can som1 tell me why i have these error messages when i have already declared a Polygon object array and what i need to change please??

    Check out the API
    http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Polygon.html
    there's no constructor that receives 3 integers
    cheers,
    Manuel Leiria

  • Back end activities for Activation & Deactivation of Aggregates

    Hi ,
    Could any body help me to understand the back-end activites performed at the time of activation and deactivation of aggregates.
    Is filling of Agreegate is same as Roll up?
    What is the diffrence between de-activation and deletion of Aggregate?
    Thanks.
    Santanu

    Hi Bose,
    Activation:
    In order to use an aggregate in the first place, it must be defined activated and filled.When you activate it, the required tables are created in the database from theaggregate definition. Technically speaking, an aggregate is actually a separate BasicCube with its own fact table and dimension tables. Dimension tables that agree with the InfoCube are used together. Upon creation, every aggregate is given a six-digit number that starts with the figure1. The table names that make up the logical object that is the aggregate are then derived in a similar manner, as are the table names of an InfoCube. For example, if the aggregate has the technical name 100001, the fact tables are called: /BIC/E100001 and /BIC/F100001. Its dimensions, which are not the same as those in the InfoCube,have the table names /BIC/D100001P, /BIC/D100001T and so on.
    Rollup:
    New data packets / requests that are loaded into the InfoCube cannot be used at first for reporting if there are aggregates that are already filled. The new packets must first be written to the aggregates by a so-called “roll-up”. In other words, data that has been recently loaded into an InfoCube is not visible for reporting, from the InfoCube or aggregates, until an aggregate roll-up takes place. During this process you can continue to report using the data that existed prior to the recent data load. The new data is only displayed by queries that are executed after a successful roll-up.
    Go for the below link for more information.
    http://sapbibw2010.blogspot.in/2010/10/aggregates.html
    Naresh

Maybe you are looking for