Algorithm question

Hello all,
if we have two different sql files then how to compare two sql algorithm?
thanks

If you have two files, then you can use UTL_FILE package.
Here is a link to documentation:
http://download-uk.oracle.com/docs/cd/B14117_01/appdev.101/b10802/u_file.htm#996728
Peter D.

Similar Messages

  • Mouse Scroller Algorithm question

    I have a mouse controlled scroller which I've fashioned from Lee Brimelow's excellent tutorial. I'm at the stage now where I want to add more thumbnails to the scroller's content area, though when I do, the scroller will not scroll any more than 8 thumbnails in either direction.
    My question is (for those of you who are way better at Math, than me) how do I complete the algorithm to compensate for adding more than just 8 thumbnails - into, say, 30 thumbnails and have the scrolling behavior always show the last or first thumbnail when the mouse is at either side of the scroller movieclip?
    this.addEventListener(MouseEvent.MOUSE_MOVE, scrollPanel);
            private function scrollPanel(e:MouseEvent):void {
                var xdist:Number = mouseX - 250;
                //_xContainer is an mc which holds the thumbnail images
                TweenLite.to(_xContainer, 0.3, { x:Math.round(-xdist)});

    when the mouse is at one extreme position the thumbnails should be at an extreme position and when the mouse is at the other extreme the thumbs should be at their other extreme.  then use linear interpolation for all other mouse positions.
    so, for example, if you want mouseX=0 to correspond to the thumbnail parent (_xContainer) being at zero (assuming a left edge reg pt) and you want mouseX=stage.stageWidth to correspond to -_xContainer.width+stage.stageWidth, declare and type your variables and use:
    findParamsF(0,0,stage.stageWidth,stage.stageWidth-_xContainer.width);
    function findParamsF(x1,y1,x2,y2){
    m=(y1-y2)/(x1-x2);
    b=y1-m*x1;
    private function scrollPanel(e:MouseEvent):void {
                var xdist:Number = m*mouseX + b;
                //_xContainer is an mc which holds the thumbnail images
                TweenLite.to(_xContainer, 0.3, { x:Math.round(-xdist)});

  • Simple algorithm question

    declare CHARS string
    declare C integer
    C<-- 0
    CHARS <-- "abc"
    repeat
    CHARS<-- concat(CHARS, CHARS)
    C<-- C + 3
    output C , ":", length(CHARS)
    until ( C > 8)
    What is the output of this algorithm?

    People just get a bit wound up if the OP post a question if it doesn't look like he made any effort to do it himself.
    That bit of psudo-code is not difficult to read. If he had a problem understanding it he could have just asked what does a certain piece mean.
    If he could understand the code then he had the option of either working it out on a page or coding it up but did neither.
    Nobody on this site (few anyway) would get get out a pen and paper or write code to solve what is obviously someones homework. You can't blame people for that.

  • Graph algorithm question

    Hello.
    I am trying to find a graph algorithm (by graph I mean nodes interconnected to each other,not the sketch of a function).This algorithm should yield the route that passes from as many nodes of the graph as possible,though it is forbidden to step on a node twice,and then ends back to the first node that it started from,thus forming a cycle.
    I am positive that this algorithm must have been researched by now,so in order to avoid thinking it myself I wonder if someone would know to direct me somewhere in the web where I can get it.Since I am a medical student,any terminology help would be also appreciated(as to the name of what I want,keywords to search etc).

    OK. Before you get too geeky here, try a brute force approach. if your graph is small or has limited connectivity, you may not need to get fancy. Its surprising what a computer can do without breaking a sweat. In any case I whipped up a solution as shown below. It is untested and will most likely have bugs (and does not check for null conditions). But as you can see the code is pretty basic and should get you from point A to point B (pun inteneded).     public List<Integer> getLargestCycle( Map<Integer,List<Integer>>graph )
            List<Integer> longestCycle = new Vector<Integer>();
            List<Integer> path = new Vector<Integer>();
            for ( Integer startingPoint : graph.keySet() )
                path.add(startingPoint);
                List<Integer> aCycle = getLargestCycle( graph, path );
                if ( aCycle.size() > longestCycle.size() )
                    longestCycle = aCycle;           
            return longestCycle;
        protected List<Integer> getLargestCycle( Map<Integer,List<Integer>>graph,
            List<Integer> currentPath )
            List<Integer> longestCycle = new Vector<Integer>();
            Integer currentPoint = currentPath.get( currentPath.size()-1 );
            Integer startingPoint = currentPath.get( 0 );
            for ( Integer nextPoint : graph.get( currentPoint ) )
                List<Integer> aPath = new Vector( currentPath );
                aPath.add( nextPoint );
                if ( nextPoint.equals( startingPoint ) )
                    if ( longestCycle.size() == 0 )
                        longestCycle = aPath;
                else if ( currentPath.contains( nextPoint ) )
                    // not a cycle here.
                else
                    List<Integer> aCycle = getLargestCycle( graph, aPath );
                    if ( aCycle.size() > longestCycle.size() )
                        longestCycle = aCycle;
            return longestCycle;
        }

  • Algorithm question, please help

    Hi all,
    Suppose that we have several String lines (postal addresses for example) in a text file.
    Is there an algoritm that permits to find the list of the addresses that 'resembles' to
    the query (an address that may contain an error) entered by the user ?
    Any idea about the algorithms used in the commercial tools to do this ?
    thanks a lot,

    http://www.cs.sunysb.edu/~algorith/files/approximate-pattern-matching.shtml
    http://www.pnylab.com/pny/papers/string_compare/string_compare/index.html
    http://archive.nlm.nih.gov/pubs/hauser/Tompaper/tompaper.php
    http://www.everything2.com/index.pl?node=edition%20distance
    http://www.everything2.com/index.pl?node=search%20for%20similar%20sub-stringsJust to give you an idea. You can also look for the soundex algorithm, it might be sufficient and it's fairly easy to implement.

  • Faces algorithm question

    Hi,
    Could anyone tell me if the recognition algorithm will perform less accurately if "unclear" faces are added to a collection of proper faces for one given person? (for example faces which would be blurry, partially hidden, with a grimace, etc.)
    I am tempted to add all pictures for a given person, whatever the "quality" of the face on that picture. But I'm afraid of bringing confusion to the recognition algorithm...
    Thanks

    Don't worry, You can't confuse it more than it already is. My Land Rover is rare in that it does not have a name but it seems to Apple it does have a face. It hangs about on the rear door dressed up as a Spare Wheel. Allan

  • Algorithm question to maximize hockey pool

    Hi! This is a little fun project that I have started to try and maximize my chances of winning our office hockey pool. I'm trying to find the best way to select 20 players that will give me the most points within a maximum salary cap.
    For example, imagine that the raw data has
    The Player Name
    Position (Forward, Defensemen, Goalie)
    Predicted amount of points for this season
    Salary.
    Now I want the 20 players that will give me the most point within X salary cap. Later on, as a phase 2, I would like to do the same thing however in this case, I only want 12 forwards, 6 defensemen and 2 goalie.
    Now the obvious way is to simply go every possible combination, however while this will work it is not a valid option as with 500 players, this would have too many possible combination. I could add some smart filters to reduce the 500 players to the top 50 forwards, top 30 defensemen and top 15 goalies but still, this would be a very slow process.
    I'm wondering if there are other algorithms out there to implement this. This is just for fun and not an important business request. But if you have some thoughts on how to proceed, please let me know.
    Thanks for your help!

    thanks for all the replies. I haven't tried the genetic algorithm yet but this was my first try at the knapsack algorith with some help from other sources. It seems to work with just the Salary as a parameter. I'm struggling at figuring out how to add the 20 player team parameter. Its in .Net but should be easy to convert to Java.
    I was thinking of doing a seperate loop to figure out the best teams with 20 players reguardless of salary and then you compare the two list until you find one that is highest on the two list. Not sure.
    namespace HockeyPoolCalculator
    public class ZeroOneKnapsack
    protected List<Item> itemList = new List<Item>();
    protected int maxSalary = 0;
    protected int teamSize = 0;
    protected int teamSalary = 0;
    protected int points = 0;
    protected bool calculated = false;
    public ZeroOneKnapsack() { }
    public ZeroOneKnapsack(int _maxSalary)
    setMaxSalary(_maxSalary);
    public ZeroOneKnapsack(List<Item> _itemList)
    setItemList(_itemList);
    public ZeroOneKnapsack(List<Item> itemList, int maxSalary)
    setItemList(_itemList);
    setMaxSalary(_maxSalary);
    // calculte the solution of 0-1 knapsack problem with dynamic method:
    public virtual List<Item> calcSolution()
    int n = itemList.Count;
    setInitialStateForCalculation();
    if (n > 0 && maxSalary > 0)
    List<List<int>> playerList = new List<List<int>>();
    List<int> salaryList = new List<int>();
    //initialise list
    playerList.Add(salaryList);
    for (int j = 0; j <= maxSalary; j++)
    salaryList.Add(0);
    // Loop through players
    for (int i = 1; i <= n; i++)
    List<int> prev = salaryList;
    playerList.Add(salaryList = new List<int>());
    for (int j = 0; j <= maxSalary; j++)
    if (j > 0)
    int wH = itemList.ElementAt(i - 1).getSalary();
    // Is the players salary more than the current calculated salary? If yes, then keep current max points, else get the highest amount between previous max points at that salary and new max points.
    salaryList.Add((wH > j)?prev.ElementAt(j): Math.Max(prev.ElementAt(j),itemList.ElementAt(i - 1).getPoints() + prev.ElementAt(j - wH)));
    else
    salaryList.Add(0);
    } // for (j...)
    } // for (i...)
    points = salaryList.ElementAt(maxSalary);
    for (int i = n, j = maxSalary; i > 0 && j >= 0; i--)
    int tempI = playerList.ElementAt(i).ElementAt(j);
    int tempI_1 = playerList.ElementAt(i - 1).ElementAt(j);
    if ((i == 0 && tempI > 0)||(i > 0 && tempI != tempI_1))
    Item iH = itemList.ElementAt(i - 1);
    int wH = iH.getSalary();
    iH.setInKnapsack(1);
    j -= wH;
    teamSalary += wH;
    } // for()
    calculated = true;
    } // if()
    return itemList;
    // add an item to the item list
    public void add(String name, int Salary, int value)
    if (name.Equals(""))
    name = "" + (itemList.Count() + 1);
    itemList.Add(new Item(name, Salary, value));
    setInitialStateForCalculation();
    // add an item to the item list
    public void add(int Salary, int value)
    add("", Salary, value); // the name will be "itemList.size() + 1"!
    // remove an item from the item list
    public void remove(String name)
    for (int pointer = 0; pointer <= itemList.Count-1; pointer++)
    itemList[pointer].getName().Equals("");
    if (itemList.ElementAt(pointer).getName().Equals(itemList.ElementAt(pointer).getName()))
    itemList.Remove(itemList.ElementAt(pointer));
    setInitialStateForCalculation();
    // remove all items from the item list
    public void removeAllItems()
    itemList.Clear();
    setInitialStateForCalculation();
    public int getPoints()
    if (!calculated)
    calcSolution();
    return points;
    public int getSolutionSalary() { return teamSalary; }
    public bool isCalculated() { return calculated; }
    public int getMaxSalary() { return maxSalary; }
    public void setTeamSize(int _teamSize)
    teamSize = _teamSize;
    public int getTeamSize()
    return teamSize;
    public void setMaxSalary(int _maxSalary)
    maxSalary = Math.Max(_maxSalary, 0);
    public void setItemList(List<Item> _itemList) {
    if (_itemList != null) {
    itemList = _itemList;
    foreach (Item item in _itemList) {
    item.checkMembers();
    // set the member with name "inKnapsack" by all items:
    private void setInKnapsackByAll(int inKnapsack) {
    foreach (Item item in itemList)
    if (inKnapsack > 0)
    item.setInKnapsack(1);
    else
    item.setInKnapsack(0);
    // set the data members of class in the state of starting the calculation:
    protected void setInitialStateForCalculation()
    setInKnapsackByAll(0);
    calculated = false;
    points = 0;
    teamSalary = 0;
    teamSize = 0;
    }

  • How to determine what row an item should go in

    Hi all,
    This is more of an algorithm question than a java specific one (but if you want to provide an answer using java code then feel free)
    I'm trying to write a piece of code that automatically imposes documents in the correct position on a sheet. here is my example
    Data array = A, B, C, D, E, F, G, H, I, J
    Impose: 3 Up
    So my output will look like this
    A - E - I
    B - F - J
    C - G -
    D - H -
    I can figure out what column each item goes in by doing this
    Total Pages= ceil of (Total Rows/Impose)
    4 = Ceil(10/3)
    Now work out my breakpoints:
    Make an array of empty breakpoints
    For n=0; n<Impose; n++
    breakpoint[n]=n*Total Pages
    This should give me a breakpoint array of
    0, 4, 8
    Then I can check its column by checking its numerical position against each breakpoint
    e.g.
    for array element 6
    is this greater than breakpoint 0? Yes
    is this greater than breakpoint 4? Yes
    is this greater than breakpoint 8? No
    So this must be breakpoint 4, ie column 2
    So I know element 6 needs to go in the middle column. But what I need to know is what row element 6 will appear in.
    So I need to say, I know there are 4 rows, and 3 columns, and element 6 will appear in row 2/column 2.
    I hope that makes some sense.
    any help?

    Nevermind, I've figured it out.
    FYI
    Because I know the breakpoint, i just take the current array position and subtract from the given breakpoint.
    E.g.
    Array Element 6 is in column 2 therefore the breakpoint is 4
    So i do 6-4=2
    Line 2 is correct

  • List creation - invisible output problem

    the method in question is appendItem(Object obj) in the ObjList class.
    The ObjList class:
    import java.util.NoSuchElementException;
    public class ObjList {
         protected Node              list;   // Link to start of list;
         /** Creates a new (empty) ObjList. */
         public ObjList() {
              this.list = null;
         /** Returns the length of this ObjList. */
         public int length() {
              Node ndcur = this.list;     // Currently scanned node.
              int i = 0;                    // Index of current node nd.
              while (ndcur != null) {
                   // Count one more item, and move on to the next one.
                   ++ i;  ndcur = ndcur.tail();
              // i is index of the null item at the end of the scan,
              // which is also the number of non-null node links scanned.
              return i;
         /** Inserts the given object at the front of this list. */
         public void prependItem(Object obj) {
                Node n = new Node(obj, list);
                list = n;
         /** Inserts the given object at the end of this list. */
         public void appendItem(Object obj) {
                Node t = new Node(obj, null);
                list.setTail(t);
         /** Returns the item at position i in this list. */
         public Object getItemAt(int i) throws NoSuchElementException {
                    Object obj = null;
              return obj;
         /** Inserts the given object into this list at position i
          * (so that the item previously at position i, and any
          * items at later positions, are all moved up by one position).
         public void insertItemAt(Object obj, int i)
         throws NoSuchElementException {
              if (i == 0)
                   // "insert at 0" is just "prepend".
                   this.prependItem(obj);
              else {
                   // ASSERT: 1 <= i;
                   // TBD
         /** Deletes the item at position i from this list. */
         public void deleteItemAt(int i) {
              if (this.list == null)
                   throw new NoSuchElementException(
                        "deleteItemAt("+i+"): list is empty!");
              // ASSERT: list is non-empty.
              // TBD
         /** Returns a string representation for this list. **/
         public String toString() {
              // Represent the list as one item per line,
              // plus header/footer...
              final String EOL = System.getProperty("line.separator");
              // Use a string buffer to build the result.
              StringBuffer str =
                   new StringBuffer("----ObjList:start----"+EOL);
              // Scan the nodes, generating one line for each.
              for (Node nd=this.list; nd!=null; nd=nd.tail())
                   str.append(nd.head()).append(EOL);
              str.append("----ObjList:end----"+EOL);
              return str.toString();
         /*########  Node class definition.   ########*/
         /** The list Node class definition is essentially as in
          * the lecture notes.
         protected static class Node {
              private Object      h;          // head
              private Node        t;          // tail link
              public Node(Object hd, Node tl) {
                   this.h = hd;  this.t = tl;
              public Object   head() { return this.h; }
              public Node     tail() { return this.t; }
              public void     setTail(Node tl) { this.t = tl; }
    }The Main class:
    public class IntList extends ObjList implements IntListSpec {
        /** main() -- basic IntList checking method. */
        public static void main(String[] args) {
        IntList intlist = new IntList();
        intlist.prependItem(1);
        intlist.prependItem(2);
        intlist.prependItem(3);
        intlist.appendItem(1);
        intlist.appendItem(2);
        intlist.appendItem(3);
        System.out.println(intlist.toString());
    //        // e.g. ...
    //          // Create a list of size 1 million -- if this takes a long time
    //          // then the constructor that takes an array parameter is
    //          // not as efficient as it could be.
    //        int[] million = new int[1000 * 1000];
    //        System.out.println("List of a million --- start creation.");
    //        IntListSpec ilm = new IntList(million);
    //        System.out.println("List of a million --- created.");
    //        System.out.println();
              // Release the large data items.
    //        million = null;
    //        ilm = null;
              // etc., etc.
    /*########  IntList Constructor and Instance Methods.  ########*/
        /** Creates a new (empty) IntList. */
        public IntList() {
            super();
        /** Creates a new IntList containing the given values, in order. */
        public IntList(int[] values) {
            this();
              // TBD
              // (add successive values from the array into the list, but
              // do it efficiently!)
         /** Inserts value n at the front of this list. */
        public void prependItem(int n) {
       // Delegate this one to our superclass.
            super.prependItem(new Integer(n));
         /** Appends value n at the end of this list. */
        public void appendItem(int n) {
            // Delegate this one to our superclass.
      //      super.appendItem(new Integer(n));
         /** Finds and returns the value at position i in this list. */
        public int getIntAt(int i) {
    //        // Delegate this one to our superclass.
          return i;//((Integer)(super.getItemAt(i))).intValue();
         /** Inserts value n at position i in this list. */
        public void insertIntAt(int n, int i) {
            // Delegate this one to our superclass.
      //      super.insertItemAt(new Integer(n), i);
         /** Deletes the value at position i in this list. */
        public void deleteIntAt(int i) {
            // Delegate this one to our superclass.
      //      super.deleteItemAt(i);
         /** Returns a one-line display string for this list. */
        public String toString() {
            // Represent this list as a single-line string
              // (which may be inconvenient when the list is big!).
            StringBuffer str = new StringBuffer("<");
            if (this.list != null) {
                str.append(this.list.head());
                   Node cur = this.list.tail();
                while (cur != null) {
                    str.append(" " + cur.head());
                        cur = cur.tail();
            str.append(">");
              return str.toString();
    }The interface class:
    import java.util.NoSuchElementException;
    * NB  In the method definitions below; the index i is assumed
    * to be non-negative; if it is too big for the given operation
    * then a NoSuchElementException should be thrown.
    public interface IntListSpec {
        // List operations, as in the "Linked Data Structures"
        // lecture.
         /** Inserts value n at the front of this list. */
        void prependItem(int n);
         /** Appends value n at the end of this list. */
        void appendItem(int n);
         /** Finds and returns the value at position i in this list. */
        int getIntAt(int i) throws NoSuchElementException;
         /** Inserts value n at position i in this list. */
        void insertIntAt(int n, int i) throws NoSuchElementException;
         /** Deletes the value at position i in this list. */
        void deleteIntAt(int i) throws NoSuchElementException;
         /** Returns a one-line display string for this list. */
        String toString();
    }My problem, as implied by the subject, is that when outputting the contents of this list after the 6 operations, only prependItem is being shown. Bear in mind that we were given all the code (degree course at uni) other than the prepend method, the append method, and all other places marked 'TBD'.
    Any help would be appreciated. I think what is happening is that 'list' doesn't know it has these extra items on the end, although I thought list.setTail(t) should have sorted that.
    Anyhow, many thanks in advance.

    You're not linking the previous tail with this new item you're trying to append.
    This is not a Java related question. It is an algorithm question. You don't have your algorithm correct, and we're not here to do your homework for you.

  • Will star transformation be scalable?

    This is rather an algorithmic question
    I happen to read a post about a real-world problem.
    http://groups.google.com/group/comp.databases.oracle.server/browse_thread/thread/0db61c4fab79769a?hl=en
    Simple back envelope analysis shows that star transformation would be very expensive in terms of storage:
    The fact table F has 750 million rows, a dimensional table D has 70k rows. Suppose I have a bitmap join index between F and D to support star transformation.
    How large would the bitmap index be?
    70k values, each need a bitmap vector of 750M bits. The bitmap size would be 70k x (750M/8) bytes=6.6kGb. Is that too large?
    Or, I miss something? If partition can help, how?
    I guess my general questions is that if the dimension table's cardinality is in the order of thousands, what solution would Oracle provide? Thanks.
    T.K.

    Thanks for the link. However, I do not see any metrics mentioning about bitmap compression degree.
    I agree that 6.6kG join bitmap index is not in the compression form. However, in general to what degree can a bitmap be compressed? In this particular example, suppose it can be compressed by a ratio of 100. Then, we still need 6.6kG/100=66G for the bitmap join index. Decompressing it on the fly also take a lot of CPUs cycles. Adding more CPU cores would not benefit since most cores share the same L2 cache. (cache misses would be a bottleneck)
    Are there any benchmark results or documents discussing bitmap compression effect and showing the practical side of a reasonable large db benefiting from Star transformation like this example?
    thanks,
    T.k.

  • How to implement clustering

    Dear all,
    I' m trying to implement clustering in my information retrieval project. I have got 100 text files, each represented by a term vector. So there are 3 arrays: file[m], term[n], and weight[m][n]. What I need to do is to cluster the files that have close similarity measured by Cosine Vector Similarity.
    I plan to use 'for loop' to compute the vector similarity between each two files and find the closest pair. I have done this actually. But after this, I don't know how to deduct these two files from the original array file[m] and weight[m][n], represent them by an average vector and then compare this vector with all the remaining files, and so on.
    Could anybody give me some idea? Thanks in advance.

    I don't think this is really a programming question - more of an algorithm question.
    There are a number of different ways of 'clustering' together a number of points in n-dimensional vector space, so that the set of points maybe represented as a single co-ordinate in n-dimensional vector space.
    Google for 'nearest neighbour clustering' there are many pages with the algorithm you require, you could also search on 'centroid cluster'.
    http://www.statsoft.com/textbook/stcluan.html is a good resource.
    I haven't implemented any clustering code myself, but knowing the algorithm, it should be straightforward in Java.
    Andy.

  • Network game communication algorithms... small question

    Just a (hopefully) quick question about getting input from the client side for passing information to a server. At the moment it is set up to take and send the input from the client once the return key is pressed, and send the whole line (with the system.in part). But obviously for a game to be played I am needing the client to send every individual key press from the client. I could try and use the read() method for the bufferedreader, but this returns an int, and I require a string so it can be checked in the server (as I am also going to have a server side representation of the game, as the project is to be investigating lag effects and different solutions to get around online game lag). Or could I use the read() method and use the returned int to find out from that key what was pressed and then change it to the key pressed from the int value returned, or is there a quicker way that doing this check?
    I think there was a method that takes a character array as a parameter and I could somehow set the size to be only 1, so it would send every individual key pressed by the client, then allowing me to send this and display it at the server side? Or am I off on the wrong foot entirely...
    This is the basic code of getting the actual input and then calling the methods which actually sort out writing to the streams elsewhere in the program:
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    s = br.readLine();
    if (s.length() > 0)
    cc.sendMessage(s + "\n");
    Thanks for any help given,
    Cheers

    Hi,
    You could send the KeyEvent object created by the key press event using an ObjectOutputStream or you could just write its code (KeyEvent.getKeyCode()) using DataOutputStream.writeInt().
    If you need the distinction between a press and a release you could write presses as normal key codes and releases as negative key codes.
    In a game I'm making that uses UDP instead of TCP to communicate over the network, since UDP packets aren't guaranteed to get to their destination, whenever a key is pressed or released I send a whole array of integer keyCodes that show which keys are down. This way when a key is released, but the packet indicating the release doesn't get to the server, the server will find out eventually when the next key is pressed/released and a new 'key state' array is sent.

  • Question about algorithms

    I need to make a divide&conquer algorithm for finding the dominant element in an array (dominant element = element which exists at least n/2 times in an array within the size n) . All you can do between those elements is compare them (no < relation or > relation) .
    Please help me because I'm really lost here...

    efwa wrote:
    I need to make a divide&conquer algorithm for finding the dominant element in an array (dominant element = element which exists at least n/2 times in an array within the size n) . All you can do between those elements is compare them (no < relation or > relation) .
    Please help me because I'm really lost here...Which part do you need help with? What have you tried so far? What worked? What didn't (and how didn't it) work?

  • LR3 resizing algorithm fails/ export sharpening question

    I have a contrasty b&w image with a severe grain effect added in SIlver Efex Pro. Exporting with resizing results in a gray and washed out image.
    I fixed this by exporting without resizing, and resized externally using ImageMagick and the Lanczos filter (very slightly better for my image than the Mitchell filter).
    I do of course though lose the opportunity to apply LRs export sharpening which is worrying. Not sure how to replicate this using ImageMagick.  Anyone know?
    Thanks,
    Ian
    ps Happy to supply files to anyone from Adobe who wants to look at the issue.

    Bruce,
    As you correctly noticed, the WxH ratio in export represents a canvas, into which the exported image is fit. Here are some illustrations on what the different settings mean:
    For what you are trying to achieve, you have to crop the image to the correct dimensions before doing the export. If I had to do it, I would create virtual copies of the original image as the last step and give each virtual copy its own crop, then export the virtual copies.
    Bruce in Philly wrote:
    Also, when I spec a dimension, shouldn't the DPI gray out?  What am not understanding here?
    The DPI resolution has no meaning for the size of the resulting image if you specify pixels in your export dimensions. But the resolution tag is written into the image, which might affect the way an image is printed, depending on the printing application.
    But if you specify your export dimensions in inches or cm, the resolution together with the dimensions in inch/cm determine the size of the resulting image in pixels. I.e. if you specify 5x7" and 300DPI, your exported images size will be 1500x2100 pixels.
    Beat

  • A question about a method with generic bounded type parameter

    Hello everybody,
    Sorry, if I ask a question which seems basic, but
    I'm new to generic types. My problem is about a method
    with a bounded type parameter. Consider the following
    situation:
    abstract class A{     }
    class B extends A{     }
    abstract class C
         public abstract <T extends A>  T  someMethod();
    public class Test extends C
         public <T extends A>  T  someMethod()
              return new B();
    }What I want to do inside the method someMethod in the class Test, is to
    return an instance of the class B.
    Normally, I'm supposed to be able to do that, because an instance of
    B is also an instance of A (because B extends A).
    However I cannot compile this program, and here is the error message:
    Test.java:16: incompatible types
    found   : B
    required: T
                    return new B();
                           ^
    1 errorany idea?
    many thanks,

    Hello again,
    First of all, thank you very much for all the answers. After I posted the comment, I worked on the program
    and I understood that in fact, as spoon_ says the only returned value can be null.
    I'm agree that I asked you a very strange (and a bit stupid) question. Actually, during recent months,
    I have been working with cryptography API Core in Java. I understood that there are classes and
    interfaces for defining keys and key factories specification, such as KeySpec (interface) and
    KeyFactorySpi (abstract class). I wanted to have some experience with these classes in order to
    understand them better. So I created a class implementing the interface KeySpec, following by a
    corresponding Key subclass (with some XOR algorithm that I defined myself) and everything was
    compiled (JDK 1.6) and worked perfectly. Except that, when I wanted to implement a factory spi
    for my classes, I saw for the first time this strange method header:
    protected abstract <T extends KeySpec> T engineGetKeySpec
    (Key key, Class<T> keySpec) throws InvalidKeySpecExceptionThat's why yesterday, I gave you a similar example with the classes A, B, ...
    in order to not to open a complicated security discussion but just to explain the ambiguous
    part for me, that is, the use of T generic parameter.
    The abstract class KeyFactorySpi was defined by Sun Microsystem, in order to give to security
    providers, the possibility to implement cryptography services and algorithms according to a given
    RFC (or whatever technical document). The methods in this class are invoked inside the
    KeyFactory class (If you have installed the JDK sources provided by Sun, You can
    verify this, by looking the source code of the KeyFactory class.) So here the T parameter is a
    key specification, that is, a class that implements the interface KeySpec and this class is often
    defined by the provider and not Sun.
    stefan.schulz wrote:
    >
    If you define the method to return some bound T that extends A, you cannot
    return a B, because T would be declared externally at invocation time.
    The definition of T as is does not make sense at all.>
    He is absolutely right about that, but the problem is, as I said, here we are
    talking about the implementation and not the invocation. The implementation is done
    by the provider whereas the invocation is done by Sun in the class KeyFactory.
    So there are completely separated.
    Therefore I wonder, how a provider can finally impelment this method??
    Besides, dannyyates wrote
    >
    Find whoever wrote the signature and shoot them. Then rewrite their code.
    Actually, before you shoot them, ask them what they were trying to achieve that
    is different from my first suggestion!
    >
    As I said, I didn't choose this method header and I'm completely agree
    with your suggestion, the following method header will do the job very well
    protected abstract KeySpec engineGetKeySpec (Key key, KeySpec key_spec)
    throws InvalidKeySpecException and personally I don't see any interest in using a generic bounded parameter T
    in this method header definition.
    Once agin, thanks a lot for the answers.

Maybe you are looking for

  • Shop floor paper printing

    Hi Team, I am new to use the transaction OPK8. I need to configure to print production order details for shop floor paper printing. How to use this transaction to print shop floor papers as per our requirement? I need to print some BOM component deta

  • Tbird 31.2.0 takes 15 minuets to start (FF also takes 15 minutes)

    Both FF and Tbird are taking 15 minutes to start right after booting XP SP3. A Process Monitor trace is attached. I see a second of activity at 2 seconds, 31 seconds, 46 seconds, 1:26, 4:56, 11:55. Then 15:35 after being started, tbird finally takes

  • Updating iTunes to download iOS7 from iTunes

    Hi, I was trying to update my iTunes to download iOS7 from iTunes because my phone thinks it's software is up to date. I plug in my phone and press the update button for my phone and iTunes tells me it requires iTunes version 11.0.5 to update to iOS7

  • Display Space in Excel output from BIP

    Hi, I am working on HR head count report , In column organization , if organization is Primary category it should be indented by 2 spaces and if organization is second category then it should be indented by three spaces.I handled this in code. But wh

  • Delete old Time Machine databases from shared drive

    1) I have an external drive that was used to store both data and Time Machine backups on the same partition. 2) I have started FRESH with a Time Capsule for my backups and my first backup is complete, so I am willing to release the old databases. QUE