What is time?
Time, Dear Reader, Is Undefined.
2014-11-12
I always have a significant amount of skepticism when taking personality tests. They reek of over aggressive compression. For example, the learning styles test we took has 4 possible outcomes. This means that tries to compress the entirety of your consciousness, the whole learning, testing counterfactuals, observing reality, process into 2 bits of information. I mean, people who often chafe at the idea of being slotted down into a number will put an awful lot of stock into tests like these or say, the zodiac, which is a little less than 4 bits of information. They are slotting themselves into numbers, and exceptionally tiny ones at that!
With this in mind, I'm reflecting on how I felt over these past 2 and a half weeks compared with the result of being slotted into the "abstract sequential" camp. There were 14 statements it makes about AS folk, and by extension me. Of those 14, I'd say 9 apply to me fairly well and how I've felt so far, 4 are too ambiguous to reasonably come down yeah or nay. And 1 I felt like I flat out disagreed with. That's pretty good.
But what about the other 3? 16 statements for CS, 15 for CR and 16 for AR. Going over them I get 35 agreements, 8 disagreements, and 4 ambiguous! So I am more probably AS than any of them at random, but a lot of the statements seemed like kind of vacuous platitudes, like, "likes to maintain friendly relationships". People that dislike friends aren't a special learning category, they're misanthropes. That Said, I will respect the spirit of the exercise. The design work does fall under the category of sentimental thinking in my book, and I did chafe under it, coupled with the time constraints my poor planning left me with it was the most problematic of the 3 weeks. Of course with something this subjective finding causal linkages is a mugs game, but hey, those are the observations.
The dynamic-static dichotomy is very much part of why I find 2 bits (a single base-pair of DNA!) insufficient information to describe significantly how someone learns. How do you categorize someone with a mix between those 4 states? Knowing that Truth with a capital T is elusive and fleeting, and deciding it is all the more precious for that gets you a pretty solid leg up on learning. Anyone with a modest appreciation for history can see that things are learnable, and it comes down to how hard are they willing to hike, and how good of a guide do they have for the schlep up the mountain.


Use Registry
Different Registry integrations provide different ways to access Metrics.
1. LookoutRegistry
Provides the ability to count metrics by a time window. It is divided into two modes: “active” and “passive”. The passive mode is off currently.
(1) Active mode
You can specify the IP address of the remote agent through [Client Configuration], that is, check when start reporting, and regularly report data.
(2) Passive mode
This mode can be activated through [Client Configuration], and HTTP service is provided on port 19399.
2. Connect to Prometheus
The data of SOFALookout can be shared with Prometheus. In order to connect to Prometheus, you first need to add dependencies to your project:
<dependency>
<groupId>com.alipay.sofa.lookout</groupId>
<artifactId>lookout-sofa-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>com.alipay.sofa.lookout</groupId>
<artifactId>lookout-reg-prometheus</artifactId>
<version>${lookout.client.version}</version>
</dependency>
After adding the dependencies, launch the application, and you can see the data by visiting http://localhost:9494, where 9494 is the default port, you can configure com.alipay.sofa.lookout.prometheus-exporter-server-port
in application.properties
to change the port.
Once you have the URL to access the data, you can edit a prometheus.yml
to grab the project information. Assuming that the local IP address is <IP_ADDRESS>, you can configure prometheus.yml
as follows:
scrape_configs:
- job_name: 'lookout-client'
scrape_interval: 5s
static_configs:
- targets: ['<IP_ADDRESS>:9494']
With the above configuration file, you can start Prometheus locally via Docker:
docker run -d -p 9090:9090 -v $PWD/prometheus.yml:/etc/prometheus/prometheus.yml --name prom prom/prometheus:master
Then visit http://localhost:9090 through the browser, and you can query the corresponding Metrics through PromQL.
An example of connecting to Prometheus is also available in SOFALookout, so you can go and see it as a reference.
3. Connect to SpringBoot actuator
In addition to Prometheus, SOFALookout can be integrated with the Actuator of SpringBoot 1.x by adding the following dependency:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
Then, start and visit http://localhost:8080/metrics to see the data of events logged by the SOFALookout API.


@Lejinad85 Mnuchin issued a warning to those not complying with US AML laws. No talk of a ban. Said specifically that bitcoin speculation is OK.
Based on the weekend's sell-off, seems key players knew in advance about this press conference, and sold into it. Seeing short ...


Overview
Package
Class
Use
Tree
Deprecated
Index
Help
PREV LETTER
NEXT LETTER
FRAMES
NO FRAMES
All Classes
A
B
C
D
E
F
G
H
I
J
L
M
N
O
P
Q
R
S
T
U
V
W
Z
S
sandbox
- Static variable in class com.getifinity.sdk.
R.id
satellite
- Static variable in class com.getifinity.sdk.
R.id
saveTokens(Context)
- Method in class com.getifinity.sdk.auth.
IFOAuthCredential
selectionDetails
- Static variable in class com.getifinity.sdk.
R.id
setAccessToken(String)
- Method in class com.getifinity.sdk.auth.
IFOAuthCredential
setActive(boolean)
- Method in class com.getifinity.sdk.generated.
IFArea
Sets if area is active.
setActive(boolean)
- Method in class com.getifinity.sdk.generated.
IFBeacon
Sets the active.
setAreaId(int)
- Method in class com.getifinity.sdk.generated.
IFArea
Sets the area id.
setAreaId(int)
- Method in class com.getifinity.sdk.generated.
IFBeacon
Sets the area id.
setAreaID(int)
- Method in class com.getifinity.sdk.generated.
IFContent
Sets the area id.
setATypeId(int)
- Method in class com.getifinity.sdk.generated.
IFArea
Sets the atype id.
setBeaconPosition(String, LatLng)
- Method in class com.getifinity.sdk.managers.
IFBluetoothManager
this method sets position of the specified beacon
setClientCredentials(String, String)
- Method in class com.getifinity.sdk.managers.
IFGeosApiManager
setContentId(int)
- Method in class com.getifinity.sdk.generated.
IFArea
setContentId(int)
- Method in class com.getifinity.sdk.generated.
IFContent
Sets the content id.
setCoordinate(LatLng)
- Method in class com.getifinity.sdk.components.
IFTransmitter
setCoords(double...)
- Method in class com.getifinity.sdk.generated.
IFVenue
setDebugModeOn()
- Static method in class com.getifinity.sdk.
IfinitySDK
setDescription(String)
- Method in class com.getifinity.sdk.generated.
IFArea
Sets the area description.
setDescription(String)
- Method in class com.getifinity.sdk.generated.
IFNode
Sets the description.
setDistanceRSSI(int)
- Method in class com.getifinity.sdk.components.
IFTransmitter
setExpirationDate(int)
- Method in class com.getifinity.sdk.auth.
IFOAuthCredential
setFile(String)
- Method in class com.getifinity.sdk.generated.
IFFloorPlan
Sets the file.
setFileHeight(int)
- Method in class com.getifinity.sdk.generated.
IFFloorPlan
Sets the file height.
setFileWidth(int)
- Method in class com.getifinity.sdk.generated.
IFFloorPlan
Sets the file width.
setFloorId(int)
- Method in class com.getifinity.sdk.generated.
IFArea
Sets the floor id.
setFloorId(int)
- Method in class com.getifinity.sdk.generated.
IFBeacon
Sets the floor id.
setFloorId(int)
- Method in class com.getifinity.sdk.generated.
IFFloorPlan
Sets the floor id.
setFloorId(int)
- Method in class com.getifinity.sdk.generated.
IFNode
Sets the floor id.
setFloorX(int)
- Method in class com.getifinity.sdk.generated.
IFBeacon
Sets the floor x.
setFloorY(int)
- Method in class com.getifinity.sdk.generated.
IFBeacon
Sets the floor y.
setIBeaconId(String)
- Method in class com.getifinity.sdk.generated.
IFBeacon
Sets the i beacon id.
setID(int)
- Method in class com.getifinity.sdk.generated.
IFBeacon
Sets the id.
setLabel(String)
- Method in class com.getifinity.sdk.generated.
IFFloorPlan
Sets the label.
setLat(double)
- Method in class com.getifinity.sdk.generated.
IFNode
Sets the lat.
setLatitude(double)
- Method in class com.getifinity.sdk.generated.
IFArea
Sets the latitude of area.
setLatitude(double)
- Method in class com.getifinity.sdk.generated.
IFBeacon
Sets the beacon latitude.
setLng(double)
- Method in class com.getifinity.sdk.generated.
IFNode
Sets the lng.
setLongitude(double)
- Method in class com.getifinity.sdk.generated.
IFArea
Sets the longitude of area.
setLongitude(double)
- Method in class com.getifinity.sdk.generated.
IFBeacon
Sets the beacon longitude.
setMajor(int)
- Method in class com.getifinity.sdk.generated.
IFBeacon
Sets major.
setMapId(String)
- Method in class com.getifinity.sdk.generated.
IFFloorPlan
Sets the map id.
setMinor(int)
- Method in class com.getifinity.sdk.generated.
IFBeacon
Sets minor.
setName(String)
- Method in class com.getifinity.sdk.generated.
IFArea
Sets the area name.
setName(String)
- Method in class com.getifinity.sdk.generated.
IFBeacon
Sets the name.
setName(String)
- Method in class com.getifinity.sdk.generated.
IFContent
Sets the content name.
setName(String)
- Method in class com.getifinity.sdk.generated.
IFFloorPlan
Sets the name.
setName(String)
- Method in class com.getifinity.sdk.generated.
IFVenue
setNodeId(int)
- Method in class com.getifinity.sdk.generated.
IFNode
Sets the node id.
setNodeType(int)
- Method in class com.getifinity.sdk.generated.
IFNode
setNorthEast(double, double)
- Method in class com.getifinity.sdk.generated.
IFFloorPlan
Sets the north east.
setNorthWest(double, double)
- Method in class com.getifinity.sdk.generated.
IFFloorPlan
Sets the north west.
setOnlyNear(boolean)
- Method in class com.getifinity.sdk.managers.
IFBluetoothManager
this method sets a flag to accept only near beacons
setOnTargetReachListener(OnTargetReachListener)
- Method in class com.getifinity.sdk.managers.
IFLocationManager
This method sets listener for reaching target
setOnTransmitterCountChangedListner(OnTransmitterCountChangedListener)
- Method in class com.getifinity.sdk.managers.
IFBluetoothManager
This method sets listener for changing count of transmitters
setPath(String)
- Method in class com.getifinity.sdk.generated.
IFFloorPlan
Sets the path.
setPlanId(int)
- Method in class com.getifinity.sdk.generated.
IFFloorPlan
Sets the plan id.
setRefreshToken(String)
- Method in class com.getifinity.sdk.auth.
IFOAuthCredential
setRSSI(int)
- Method in class com.getifinity.sdk.components.
IFTransmitter
setSouthEast(double, double)
- Method in class com.getifinity.sdk.generated.
IFFloorPlan
Sets the south east.
setSouthWest(double, double)
- Method in class com.getifinity.sdk.generated.
IFFloorPlan
Sets the south west.
setTokenType(String)
- Method in class com.getifinity.sdk.auth.
IFOAuthCredential
setUpdateTime(long)
- Method in class com.getifinity.sdk.generated.
IFVenue
setUserId(int)
- Method in class com.getifinity.sdk.generated.
IFBeacon
Sets the user id.
setUserId(int)
- Method in class com.getifinity.sdk.generated.
IFVenue
setUUID(String)
- Method in class com.getifinity.sdk.generated.
IFBeacon
Sets the uuid.
setVenueId(int)
- Method in class com.getifinity.sdk.generated.
IFVenue
sharedInstance
- Static variable in class com.getifinity.sdk.auth.
IFOAuthCredential
startManager(Context)
- Method in class com.getifinity.sdk.managers.
IFBluetoothManager
This method starts Low Energy scan in IFBluetoothManager.
startManager(Context)
- Method in class com.getifinity.sdk.managers.
IFIndoorLocationManager
This method starts calculating user position in IFIndoorLocationManager
startNavigation(List<IFNode>)
- Method in class com.getifinity.sdk.managers.
IFLocationManager
This method starts navigations between two points, passing list of navigation nodes is required
stopManager()
- Method in class com.getifinity.sdk.managers.
IFBluetoothManager
this method stops Low Energy scan in IFBluetoothManager and resets all the transmitters.
stopManager()
- Method in class com.getifinity.sdk.managers.
IFIndoorLocationManager
this method stops calculating user position
store_picture_message
- Static variable in class com.getifinity.sdk.
R.string
store_picture_title
- Static variable in class com.getifinity.sdk.
R.string
StreamUtils
- Class in
com.getifinity.sdk.utils
StreamUtils()
- Constructor for class com.getifinity.sdk.utils.
StreamUtils
strict_sandbox
- Static variable in class com.getifinity.sdk.
R.id
StringUtils
- Class in
com.getifinity.sdk.utils
StringUtils()
- Constructor for class com.getifinity.sdk.utils.
StringUtils
Overview
Package
Class
Use
Tree
Deprecated
Index
Help
PREV LETTER
NEXT LETTER
FRAMES
NO FRAMES
All Classes
A
B
C
D
E
F
G
H
I
J
L
M
N
O
P
Q
R
S
T
U
V
W
Z


Lizzie Ellis | @lizmeister321
Let's use the tools we have to hang out more!
Hold down alt and click on any element to zoom in on it using zoom.js. Alt + click anywhere to zoom back out.
Movie Selection email goes out on Friday, w/ film links
Two weeks to watch movie
In-person discussion with remote available. Online comment board open simultaneously
Pick new movie as a group online
Wash, rinse, repeat
See you at the movies!


Home
Log in
Create an account
New Entry
View Contact Info List
Generate a new qrcode
Stored qrcodes
Log out
Contact Information
First Name
Last Name
number
Address
Email


Adrien Joly added this track to post-rock / progressive via Stefanos Mavrogenis
10:55 - 22 Jul 2018 · Via YouTube
Tip: You can mention people with "@"
Adrien Joly added this track to classical & epic
15:42 - 15 Jul 2018 · Via YouTube from totoromoon.wordpress.com...
Adrien Joly added this track to epic coding session soundtrack
11:41 - 28 Jun 2018 · Via Bandcamp from alexanderbrandon.bandcamp.com...
Adrien Joly added this track to Jazz meets World
16:47 - 26 Jun 2018 · Via YouTube from www.youtube.com...
Adrien Joly Jun 2018
smiling band from cuba, fantastic female drummer !
Adrien Joly added this track to rock via Thomas Radioyes
11:54 - 23 Jun 2018 · Via YouTube
9:41 - 21 Jun 2018 · Via Soundcloud
chiptune
13:35 - 6 Jun 2018 · Via YouTube from www.youtube.com...
Adrien Joly added this track to soul / funk / jazz / etc...
12:28 - 26 May 2018 · Via YouTube
Adrien Joly 2 months ago
groovy instrumental jazz
Adrien Joly added this track to math-rock / indie-rock via ROBIT
15:24 - 17 May 2018 · Via Soundcloud
Adrien Joly added this track to Inspiring Drumming
18:28 - 14 May 2018 · Via YouTube
Adrien Joly added this track to still awake at night
3:43 - 8 May 2018 · Via Soundcloud
Adrien Joly added this track to aLIVE
15:02 - 28 Apr 2018 · Via YouTube from www.youtube.com...
Adrien Joly 3 months ago
an instrumental blues song that goes intense ! #telecaster
Adrien Joly added this track to mesmerizing tracks (a.k.a musical weed)
14:58 - 28 Apr 2018 · Via YouTube
gives me the chills everytime
Adrien Joly added this track to paranormal intensity
14:57 - 28 Apr 2018 · Via YouTube from www.youtube.com...
Adrien Joly added this track to rock via Chowee
14:54 - 28 Apr 2018 · Via YouTube
discovered in tv series "halt and catch fire"
14:53 - 28 Apr 2018 · Via YouTube
Adrien Joly added this track to on va tout mettre en vrac! via Échange de Son
14:52 - 28 Apr 2018 · Via YouTube
14:50 - 28 Apr 2018 · Via YouTube
Adrien Joly added this track to lullabies via Yvad
Adrien Joly added this track to the lounge
14:49 - 28 Apr 2018 · Via Soundcloud


International TS Organization Links Australia Belgium Colombia Denmark Finland France Germany Iceland Italy Japan Norway Philippines Poland Scotland Spain / Madrid Sweden Switzerland United Kingdom United States


Ang aking website na mabangis
arya's list
Leave one wolf alive and the sheep are never safe.
Joffrey
Cersei
Tywin
Clegane
Dunsen
follow and read awesome alternative media
Bulatlat


VSL // I Wanna See Your Grill
* “Brooklyn BBQ is more stylish, more loose…” And apparently, it’s taking over the world
today’s Very Short List:
food 23 May 2014
Alexa Jaccarino is the editor of Very Short List, and she loves to hear from you! TWITTER
Subscribe
* This 1963 Weber ‘barbecue in a table
* Lucky Dog Hot Sauce–award-winning, sublimely versatile, and altruistic–is the perfect addition to a Memorial Day cookout. Founder Scott Zalkind sends hot sauce care packages to US soldiers abroad to dash a little comfort of home to their meals
http://link.nyobserver.com/516ca68465217dc6e1b9a3a61lfml.bdu/TvnrKi0WTdwTHwxwC1427
delightful e-mail that shares
cultural gems from a
different curator every day.
If you have any problems reading this e-mail, click here
http://link.nyobserver.com/516ca68465217dc6e1b9a3a61lfml.bdu/UHyHCJsf7NZSKXrPC1b3c
Subscribe
Forward
My Account
Unsubscribe
culture 21 May 2014
Anne T. Donahue takes no shit, and gets it done.
culture 19 May 2014
Rita Vermaas explores the music scene in D.C.
food 16 May 2014
Mark Briggs eats like he gives a damn.
Editorial Policy
Privacy Policy
Contact Us
Press
Terms + Conditions
very fine print: ©2014
Observer VSL LLC.
321 West 44th Street, 6th Floor
New York, NY 10036 USA
All rights reserved.
Questions?<PHONE_NUMBER>.
This message was intended for<EMAIL_ADDRESS>If you believe this has been sent to you in error, please safely unsubscribe


Thanks for your ineterest!
In the main time, share Braindate with your friends!Ask them to refer you in the form, and your spot on the wait list will be boosted up. See you soon ~ 😁 🦄
© 2020 Braindates, Inc. All rights reserved.


The Volunteers will be picked up from the Airport and will be taken care
of from the day they arrive till there departure.
All meals will be prepared for the volunteers and many extras.
We are doing 4 trips with the volunteers to make an awesome experience in such a beautiful country. (optional).
The Volunteers are accommodated on the farm with a beautiful garden and a lot of free space. There will be 2 volunteers per room and each room with a bathroom. The rooms are very comfortable and all volunteers just need to arrive with there personal belongings. The volunteers will be served with 3 meals per day which will be prepared and eat with the family living at the project.


| 1 | /* =========================================================== | |
| 2 | * JFreeChart : a free chart library for the Java(tm) platform | |
| 3 | * =========================================================== | |
| 4 | * | |
| 5 | * (C) Copyright 2000-2009, by Object Refinery Limited and Contributors. | |
| 6 | * | |
| 7 | * Project Info: http://www.jfree.org/jfreechart/index.html | |
| 8 | * | |
| 9 | * This library is free software; you can redistribute it and/or modify it | |
| 10 | * under the terms of the GNU Lesser General Public License as published by | |
| 11 | * the Free Software Foundation; either version 2.1 of the License, or | |
| 12 | * (at your option) any later version. | |
| 13 | * | |
| 14 | * This library is distributed in the hope that it will be useful, but | |
| 15 | * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY | |
| 16 | * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public | |
| 17 | * License for more details. | |
| 18 | * | |
| 19 | * You should have received a copy of the GNU Lesser General Public | |
| 20 | * License along with this library; if not, write to the Free Software | |
| 21 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, | |
| 22 | * USA. | |
| 23 | * | |
| 24 | * [Java is a trademark or registered trademark of Sun Microsystems, Inc. | |
| 25 | * in the United States and other countries.] | |
| 26 | * | |
| 27 | * ---------------------- | |
| 28 | * StandardDialScale.java | |
| 29 | * ---------------------- | |
| 30 | * (C) Copyright 2006-2009, by Object Refinery Limited. | |
| 31 | * | |
| 32 | * Original Author: David Gilbert (for Object Refinery Limited); | |
| 33 | * Contributor(s): -; | |
| 34 | * | |
| 35 | * Changes | |
| 36 | * ------- | |
| 37 | * 03-Nov-2006 : Version 1 (DG); | |
| 38 | * 17-Nov-2006 : Added flags for tick label visibility (DG); | |
| 39 | * 21-Jun-2007 : Removed JCommon dependencies (DG); | |
| 40 | * 24-Oct-2007 : Added tick label formatter (DG); | |
| 41 | * 19-Nov-2007 : Added some missing accessor methods (DG); | |
| 42 | * 27-Feb-2009 : Fixed bug 2617557: tickLabelPaint ignored (DG); | |
| 43 | * | |
| 44 | */ | |
| 45 | ||
| 46 | package org.jfree.chart.plot.dial; | |
| 47 | ||
| 48 | import java.awt.BasicStroke; | |
| 49 | import java.awt.Color; | |
| 50 | import java.awt.Font; | |
| 51 | import java.awt.Graphics2D; | |
| 52 | import java.awt.Paint; | |
| 53 | import java.awt.Stroke; | |
| 54 | import java.awt.geom.Arc2D; | |
| 55 | import java.awt.geom.Line2D; | |
| 56 | import java.awt.geom.Point2D; | |
| 57 | import java.awt.geom.Rectangle2D; | |
| 58 | import java.io.IOException; | |
| 59 | import java.io.ObjectInputStream; | |
| 60 | import java.io.ObjectOutputStream; | |
| 61 | import java.io.Serializable; | |
| 62 | import java.text.DecimalFormat; | |
| 63 | import java.text.NumberFormat; | |
| 64 | ||
| 65 | import org.jfree.chart.text.TextAnchor; | |
| 66 | import org.jfree.chart.text.TextUtilities; | |
| 67 | import org.jfree.chart.util.PaintUtilities; | |
| 68 | import org.jfree.chart.util.PublicCloneable; | |
| 69 | import org.jfree.chart.util.SerialUtilities; | |
| 70 | ||
| 71 | /** | |
| 72 | * A scale for a {@link DialPlot}. | |
| 73 | * | |
| 74 | * @since 1.0.7 | |
| 75 | */ | |
| 76 | public class StandardDialScale extends AbstractDialLayer implements DialScale, | |
| 77 | Cloneable, PublicCloneable, Serializable { | |
| 78 | ||
| 79 | /** For serialization. */ | |
| 80 | static final long serialVersionUID =<PHONE_NUMBER>665918516L; | |
| 81 | ||
| 82 | /** The minimum data value for the scale. */ | |
| 83 | private double lowerBound; | |
| 84 | ||
| 85 | /** The maximum data value for the scale. */ | |
| 86 | private double upperBound; | |
| 87 | ||
| 88 | /** | |
| 89 | * The start angle for the scale display, in degrees (using the same | |
| 90 | * encoding as Arc2D). | |
| 91 | */ | |
| 92 | private double startAngle; | |
| 93 | ||
| 94 | /** The extent of the scale display. */ | |
| 95 | private double extent; | |
| 96 | ||
| 97 | /** | |
| 98 | * The factor (in the range 0.0 to 1.0) that determines the outside limit | |
| 99 | * of the tick marks. | |
| 100 | */ | |
| 101 | private double tickRadius; | |
| 102 | ||
| 103 | /** | |
| 104 | * The increment (in data units) between major tick marks. | |
| 105 | */ | |
| 106 | private double majorTickIncrement; | |
| 107 | ||
| 108 | /** | |
| 109 | * The factor that is subtracted from the tickRadius to determine the | |
| 110 | * inner point of the major ticks. | |
| 111 | */ | |
| 112 | private double majorTickLength; | |
| 113 | ||
| 114 | /** | |
| 115 | * The paint to use for major tick marks. This field is transient because | |
| 116 | * it requires special handling for serialization. | |
| 117 | */ | |
| 118 | private transient Paint majorTickPaint; | |
| 119 | ||
| 120 | /** | |
| 121 | * The stroke to use for major tick marks. This field is transient because | |
| 122 | * it requires special handling for serialization. | |
| 123 | */ | |
| 124 | private transient Stroke majorTickStroke; | |
| 125 | ||
| 126 | /** | |
| 127 | * The number of minor ticks between each major tick. | |
| 128 | */ | |
| 129 | private int minorTickCount; | |
| 130 | ||
| 131 | /** | |
| 132 | * The factor that is subtracted from the tickRadius to determine the | |
| 133 | * inner point of the minor ticks. | |
| 134 | */ | |
| 135 | private double minorTickLength; | |
| 136 | ||
| 137 | /** | |
| 138 | * The paint to use for minor tick marks. This field is transient because | |
| 139 | * it requires special handling for serialization. | |
| 140 | */ | |
| 141 | private transient Paint minorTickPaint; | |
| 142 | ||
| 143 | /** | |
| 144 | * The stroke to use for minor tick marks. This field is transient because | |
| 145 | * it requires special handling for serialization. | |
| 146 | */ | |
| 147 | private transient Stroke minorTickStroke; | |
| 148 | ||
| 149 | /** | |
| 150 | * The tick label offset. | |
| 151 | */ | |
| 152 | private double tickLabelOffset; | |
| 153 | ||
| 154 | /** | |
| 155 | * The tick label font. | |
| 156 | */ | |
| 157 | private Font tickLabelFont; | |
| 158 | ||
| 159 | /** | |
| 160 | * A flag that controls whether or not the tick labels are | |
| 161 | * displayed. | |
| 162 | */ | |
| 163 | private boolean tickLabelsVisible; | |
| 164 | ||
| 165 | /** | |
| 166 | * The number formatter for the tick labels. | |
| 167 | */ | |
| 168 | private NumberFormat tickLabelFormatter; | |
| 169 | ||
| 170 | /** | |
| 171 | * A flag that controls whether or not the first tick label is | |
| 172 | * displayed. | |
| 173 | */ | |
| 174 | private boolean firstTickLabelVisible; | |
| 175 | ||
| 176 | /** | |
| 177 | * The tick label paint. This field is transient because it requires | |
| 178 | * special handling for serialization. | |
| 179 | */ | |
| 180 | private transient Paint tickLabelPaint; | |
| 181 | ||
| 182 | /** | |
| 183 | * Creates a new instance of DialScale. | |
| 184 | */ | |
| 185 | public StandardDialScale() { | |
| 186 | this(0.0, 100.0, 175, -170, 10.0, 4); | |
| 187 | } | |
| 188 | ||
| 189 | /** | |
| 190 | * Creates a new instance. | |
| 191 | * | |
| 192 | * @param lowerBound the lower bound of the scale. | |
| 193 | * @param upperBound the upper bound of the scale. | |
| 194 | * @param startAngle the start angle (in degrees, using the same | |
| 195 | * orientation as Java's Arc2D class). | |
| 196 | * @param extent the extent (in degrees, counter-clockwise). | |
| 197 | * @param majorTickIncrement the interval between major tick marks | |
| 198 | * @param minorTickCount the number of minor ticks between major tick | |
| 199 | * marks. | |
| 200 | */ | |
| 201 | public StandardDialScale(double lowerBound, double upperBound, | |
| 202 | double startAngle, double extent, double majorTickIncrement, | |
| 203 | int minorTickCount) { | |
| 204 | this.startAngle = startAngle; | |
| 205 | this.extent = extent; | |
| 206 | this.lowerBound = lowerBound; | |
| 207 | this.upperBound = upperBound; | |
| 208 | this.tickRadius = 0.70; | |
| 209 | this.tickLabelsVisible = true; | |
| 210 | this.tickLabelFormatter = new DecimalFormat("0.0"); | |
| 211 | this.firstTickLabelVisible = true; | |
| 212 | this.tickLabelFont = new Font("Tahoma", Font.BOLD, 16); | |
| 213 | this.tickLabelPaint = Color.blue; | |
| 214 | this.tickLabelOffset = 0.10; | |
| 215 | this.majorTickIncrement = majorTickIncrement; | |
| 216 | this.majorTickLength = 0.04; | |
| 217 | this.majorTickPaint = Color.black; | |
| 218 | this.majorTickStroke = new BasicStroke(3.0f); | |
| 219 | this.minorTickCount = minorTickCount; | |
| 220 | this.minorTickLength = 0.02; | |
| 221 | this.minorTickPaint = Color.black; | |
| 222 | this.minorTickStroke = new BasicStroke(1.0f); | |
| 223 | } | |
| 224 | ||
| 225 | /** | |
| 226 | * Returns the lower bound for the scale. | |
| 227 | * | |
| 228 | * @return The lower bound for the scale. | |
| 229 | * | |
| 230 | * @see #setLowerBound(double) | |
| 231 | * | |
| 232 | * @since 1.0.8 | |
| 233 | */ | |
| 234 | public double getLowerBound() { | |
| 235 |
1
1. getLowerBound : replaced return of double value with -(x + 1) for org/jfree/chart/plot/dial/StandardDialScale::getLowerBound → NO_COVERAGE |
return this.lowerBound; |
| 236 | } | |
| 237 | ||
| 238 | /** | |
| 239 | * Sets the lower bound for the scale and sends a | |
| 240 | * {@link DialLayerChangeEvent} to all registered listeners. | |
| 241 | * | |
| 242 | * @param lower the lower bound. | |
| 243 | * | |
| 244 | * @see #getLowerBound() | |
| 245 | * | |
| 246 | * @since 1.0.8 | |
| 247 | */ | |
| 248 | public void setLowerBound(double lower) { | |
| 249 | this.lowerBound = lower; | |
| 250 |
1
1. setLowerBound : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → NO_COVERAGE |
notifyListeners(new DialLayerChangeEvent(this)); |
| 251 | } | |
| 252 | ||
| 253 | /** | |
| 254 | * Returns the upper bound for the scale. | |
| 255 | * | |
| 256 | * @return The upper bound for the scale. | |
| 257 | * | |
| 258 | * @see #setUpperBound(double) | |
| 259 | * | |
| 260 | * @since 1.0.8 | |
| 261 | */ | |
| 262 | public double getUpperBound() { | |
| 263 |
1
1. getUpperBound : replaced return of double value with -(x + 1) for org/jfree/chart/plot/dial/StandardDialScale::getUpperBound → NO_COVERAGE |
return this.upperBound; |
| 264 | } | |
| 265 | ||
| 266 | /** | |
| 267 | * Sets the upper bound for the scale and sends a | |
| 268 | * {@link DialLayerChangeEvent} to all registered listeners. | |
| 269 | * | |
| 270 | * @param upper the upper bound. | |
| 271 | * | |
| 272 | * @see #getUpperBound() | |
| 273 | * | |
| 274 | * @since 1.0.8 | |
| 275 | */ | |
| 276 | public void setUpperBound(double upper) { | |
| 277 | this.upperBound = upper; | |
| 278 |
1
1. setUpperBound : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → NO_COVERAGE |
notifyListeners(new DialLayerChangeEvent(this)); |
| 279 | } | |
| 280 | ||
| 281 | /** | |
| 282 | * Returns the start angle for the scale (in degrees using the same | |
| 283 | * orientation as Java's Arc2D class). | |
| 284 | * | |
| 285 | * @return The start angle. | |
| 286 | * | |
| 287 | * @see #setStartAngle(double) | |
| 288 | */ | |
| 289 | public double getStartAngle() { | |
| 290 |
1
1. getStartAngle : replaced return of double value with -(x + 1) for org/jfree/chart/plot/dial/StandardDialScale::getStartAngle → NO_COVERAGE |
return this.startAngle; |
| 291 | } | |
| 292 | ||
| 293 | /** | |
| 294 | * Sets the start angle for the scale and sends a | |
| 295 | * {@link DialLayerChangeEvent} to all registered listeners. | |
| 296 | * | |
| 297 | * @param angle the angle (in degrees). | |
| 298 | * | |
| 299 | * @see #getStartAngle() | |
| 300 | */ | |
| 301 | public void setStartAngle(double angle) { | |
| 302 | this.startAngle = angle; | |
| 303 |
1
1. setStartAngle : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → KILLED |
notifyListeners(new DialLayerChangeEvent(this)); |
| 304 | } | |
| 305 | ||
| 306 | /** | |
| 307 | * Returns the extent. | |
| 308 | * | |
| 309 | * @return The extent. | |
| 310 | * | |
| 311 | * @see #setExtent(double) | |
| 312 | */ | |
| 313 | public double getExtent() { | |
| 314 |
1
1. getExtent : replaced return of double value with -(x + 1) for org/jfree/chart/plot/dial/StandardDialScale::getExtent → NO_COVERAGE |
return this.extent; |
| 315 | } | |
| 316 | ||
| 317 | /** | |
| 318 | * Sets the extent and sends a {@link DialLayerChangeEvent} to all | |
| 319 | * registered listeners. | |
| 320 | * | |
| 321 | * @param extent the extent. | |
| 322 | * | |
| 323 | * @see #getExtent() | |
| 324 | */ | |
| 325 | public void setExtent(double extent) { | |
| 326 | this.extent = extent; | |
| 327 |
1
1. setExtent : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → SURVIVED |
notifyListeners(new DialLayerChangeEvent(this)); |
| 328 | } | |
| 329 | ||
| 330 | /** | |
| 331 | * Returns the radius (as a percentage of the maximum space available) of | |
| 332 | * the outer limit of the tick marks. | |
| 333 | * | |
| 334 | * @return The tick radius. | |
| 335 | * | |
| 336 | * @see #setTickRadius(double) | |
| 337 | */ | |
| 338 | public double getTickRadius() { | |
| 339 |
1
1. getTickRadius : replaced return of double value with -(x + 1) for org/jfree/chart/plot/dial/StandardDialScale::getTickRadius → NO_COVERAGE |
return this.tickRadius; |
| 340 | } | |
| 341 | ||
| 342 | /** | |
| 343 | * Sets the tick radius and sends a {@link DialLayerChangeEvent} to all | |
| 344 | * registered listeners. | |
| 345 | * | |
| 346 | * @param radius the radius. | |
| 347 | * | |
| 348 | * @see #getTickRadius() | |
| 349 | */ | |
| 350 | public void setTickRadius(double radius) { | |
| 351 |
2
1. setTickRadius : changed conditional boundary → SURVIVED 2. setTickRadius : negated conditional → KILLED |
if (radius <= 0.0) { |
| 352 | throw new IllegalArgumentException( | |
| 353 | "The 'radius' must be positive."); | |
| 354 | } | |
| 355 | this.tickRadius = radius; | |
| 356 |
1
1. setTickRadius : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → SURVIVED |
notifyListeners(new DialLayerChangeEvent(this)); |
| 357 | } | |
| 358 | ||
| 359 | /** | |
| 360 | * Returns the increment (in data units) between major tick labels. | |
| 361 | * | |
| 362 | * @return The increment between major tick labels. | |
| 363 | * | |
| 364 | * @see #setMajorTickIncrement(double) | |
| 365 | */ | |
| 366 | public double getMajorTickIncrement() { | |
| 367 |
1
1. getMajorTickIncrement : replaced return of double value with -(x + 1) for org/jfree/chart/plot/dial/StandardDialScale::getMajorTickIncrement → NO_COVERAGE |
return this.majorTickIncrement; |
| 368 | } | |
| 369 | ||
| 370 | /** | |
| 371 | * Sets the increment (in data units) between major tick labels and sends a | |
| 372 | * {@link DialLayerChangeEvent} to all registered listeners. | |
| 373 | * | |
| 374 | * @param increment the increment. | |
| 375 | * | |
| 376 | * @see #getMajorTickIncrement() | |
| 377 | */ | |
| 378 | public void setMajorTickIncrement(double increment) { | |
| 379 |
2
1. setMajorTickIncrement : changed conditional boundary → SURVIVED 2. setMajorTickIncrement : negated conditional → KILLED |
if (increment <= 0.0) { |
| 380 | throw new IllegalArgumentException( | |
| 381 | "The 'increment' must be positive."); | |
| 382 | } | |
| 383 | this.majorTickIncrement = increment; | |
| 384 |
1
1. setMajorTickIncrement : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → SURVIVED |
notifyListeners(new DialLayerChangeEvent(this)); |
| 385 | } | |
| 386 | ||
| 387 | /** | |
| 388 | * Returns the length factor for the major tick marks. The value is | |
| 389 | * subtracted from the tick radius to determine the inner starting point | |
| 390 | * for the tick marks. | |
| 391 | * | |
| 392 | * @return The length factor. | |
| 393 | * | |
| 394 | * @see #setMajorTickLength(double) | |
| 395 | */ | |
| 396 | public double getMajorTickLength() { | |
| 397 |
1
1. getMajorTickLength : replaced return of double value with -(x + 1) for org/jfree/chart/plot/dial/StandardDialScale::getMajorTickLength → NO_COVERAGE |
return this.majorTickLength; |
| 398 | } | |
| 399 | ||
| 400 | /** | |
| 401 | * Sets the length factor for the major tick marks and sends a | |
| 402 | * {@link DialLayerChangeEvent} to all registered listeners. | |
| 403 | * | |
| 404 | * @param length the length. | |
| 405 | * | |
| 406 | * @see #getMajorTickLength() | |
| 407 | */ | |
| 408 | public void setMajorTickLength(double length) { | |
| 409 |
2
1. setMajorTickLength : changed conditional boundary → SURVIVED 2. setMajorTickLength : negated conditional → KILLED |
if (length < 0.0) { |
| 410 | throw new IllegalArgumentException("Negative 'length' argument."); | |
| 411 | } | |
| 412 | this.majorTickLength = length; | |
| 413 |
1
1. setMajorTickLength : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → SURVIVED |
notifyListeners(new DialLayerChangeEvent(this)); |
| 414 | } | |
| 415 | ||
| 416 | /** | |
| 417 | * Returns the major tick paint. | |
| 418 | * | |
| 419 | * @return The major tick paint (never null). | |
| 420 | * | |
| 421 | * @see #setMajorTickPaint(Paint) | |
| 422 | */ | |
| 423 | public Paint getMajorTickPaint() { | |
| 424 |
1
1. getMajorTickPaint : mutated return of Object value for org/jfree/chart/plot/dial/StandardDialScale::getMajorTickPaint to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return this.majorTickPaint; |
| 425 | } | |
| 426 | ||
| 427 | /** | |
| 428 | * Sets the major tick paint and sends a {@link DialLayerChangeEvent} to | |
| 429 | * all registered listeners. | |
| 430 | * | |
| 431 | * @param paint the paint (null not permitted). | |
| 432 | * | |
| 433 | * @see #getMajorTickPaint() | |
| 434 | */ | |
| 435 | public void setMajorTickPaint(Paint paint) { | |
| 436 |
1
1. setMajorTickPaint : negated conditional → KILLED |
if (paint == null) { |
| 437 | throw new IllegalArgumentException("Null 'paint' argument."); | |
| 438 | } | |
| 439 | this.majorTickPaint = paint; | |
| 440 |
1
1. setMajorTickPaint : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → SURVIVED |
notifyListeners(new DialLayerChangeEvent(this)); |
| 441 | } | |
| 442 | ||
| 443 | /** | |
| 444 | * Returns the stroke used to draw the major tick marks. | |
| 445 | * | |
| 446 | * @return The stroke (never null). | |
| 447 | * | |
| 448 | * @see #setMajorTickStroke(Stroke) | |
| 449 | */ | |
| 450 | public Stroke getMajorTickStroke() { | |
| 451 |
1
1. getMajorTickStroke : mutated return of Object value for org/jfree/chart/plot/dial/StandardDialScale::getMajorTickStroke to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return this.majorTickStroke; |
| 452 | } | |
| 453 | ||
| 454 | /** | |
| 455 | * Sets the stroke used to draw the major tick marks and sends a | |
| 456 | * {@link DialLayerChangeEvent} to all registered listeners. | |
| 457 | * | |
| 458 | * @param stroke the stroke (null not permitted). | |
| 459 | * | |
| 460 | * @see #getMajorTickStroke() | |
| 461 | */ | |
| 462 | public void setMajorTickStroke(Stroke stroke) { | |
| 463 |
1
1. setMajorTickStroke : negated conditional → KILLED |
if (stroke == null) { |
| 464 | throw new IllegalArgumentException("Null 'stroke' argument."); | |
| 465 | } | |
| 466 | this.majorTickStroke = stroke; | |
| 467 |
1
1. setMajorTickStroke : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → SURVIVED |
notifyListeners(new DialLayerChangeEvent(this)); |
| 468 | } | |
| 469 | ||
| 470 | /** | |
| 471 | * Returns the number of minor tick marks between major tick marks. | |
| 472 | * | |
| 473 | * @return The number of minor tick marks between major tick marks. | |
| 474 | * | |
| 475 | * @see #setMinorTickCount(int) | |
| 476 | */ | |
| 477 | public int getMinorTickCount() { | |
| 478 |
1
1. getMinorTickCount : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return this.minorTickCount; |
| 479 | } | |
| 480 | ||
| 481 | /** | |
| 482 | * Sets the number of minor tick marks between major tick marks and sends | |
| 483 | * a {@link DialLayerChangeEvent} to all registered listeners. | |
| 484 | * | |
| 485 | * @param count the count. | |
| 486 | * | |
| 487 | * @see #getMinorTickCount() | |
| 488 | */ | |
| 489 | public void setMinorTickCount(int count) { | |
| 490 |
2
1. setMinorTickCount : changed conditional boundary → SURVIVED 2. setMinorTickCount : negated conditional → KILLED |
if (count < 0) { |
| 491 | throw new IllegalArgumentException( | |
| 492 | "The 'count' cannot be negative."); | |
| 493 | } | |
| 494 | this.minorTickCount = count; | |
| 495 |
1
1. setMinorTickCount : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → SURVIVED |
notifyListeners(new DialLayerChangeEvent(this)); |
| 496 | } | |
| 497 | ||
| 498 | /** | |
| 499 | * Returns the length factor for the minor tick marks. The value is | |
| 500 | * subtracted from the tick radius to determine the inner starting point | |
| 501 | * for the tick marks. | |
| 502 | * | |
| 503 | * @return The length factor. | |
| 504 | * | |
| 505 | * @see #setMinorTickLength(double) | |
| 506 | */ | |
| 507 | public double getMinorTickLength() { | |
| 508 |
1
1. getMinorTickLength : replaced return of double value with -(x + 1) for org/jfree/chart/plot/dial/StandardDialScale::getMinorTickLength → NO_COVERAGE |
return this.minorTickLength; |
| 509 | } | |
| 510 | ||
| 511 | /** | |
| 512 | * Sets the length factor for the minor tick marks and sends | |
| 513 | * a {@link DialLayerChangeEvent} to all registered listeners. | |
| 514 | * | |
| 515 | * @param length the length. | |
| 516 | * | |
| 517 | * @see #getMinorTickLength() | |
| 518 | */ | |
| 519 | public void setMinorTickLength(double length) { | |
| 520 |
2
1. setMinorTickLength : changed conditional boundary → SURVIVED 2. setMinorTickLength : negated conditional → KILLED |
if (length < 0.0) { |
| 521 | throw new IllegalArgumentException("Negative 'length' argument."); | |
| 522 | } | |
| 523 | this.minorTickLength = length; | |
| 524 |
1
1. setMinorTickLength : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → SURVIVED |
notifyListeners(new DialLayerChangeEvent(this)); |
| 525 | } | |
| 526 | ||
| 527 | /** | |
| 528 | * Returns the paint used to draw the minor tick marks. | |
| 529 | * | |
| 530 | * @return The paint (never null). | |
| 531 | * | |
| 532 | * @see #setMinorTickPaint(Paint) | |
| 533 | */ | |
| 534 | public Paint getMinorTickPaint() { | |
| 535 |
1
1. getMinorTickPaint : mutated return of Object value for org/jfree/chart/plot/dial/StandardDialScale::getMinorTickPaint to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return this.minorTickPaint; |
| 536 | } | |
| 537 | ||
| 538 | /** | |
| 539 | * Sets the paint used to draw the minor tick marks and sends a | |
| 540 | * {@link DialLayerChangeEvent} to all registered listeners. | |
| 541 | * | |
| 542 | * @param paint the paint (null not permitted). | |
| 543 | * | |
| 544 | * @see #getMinorTickPaint() | |
| 545 | */ | |
| 546 | public void setMinorTickPaint(Paint paint) { | |
| 547 |
1
1. setMinorTickPaint : negated conditional → NO_COVERAGE |
if (paint == null) { |
| 548 | throw new IllegalArgumentException("Null 'paint' argument."); | |
| 549 | } | |
| 550 | this.minorTickPaint = paint; | |
| 551 |
1
1. setMinorTickPaint : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → NO_COVERAGE |
notifyListeners(new DialLayerChangeEvent(this)); |
| 552 | } | |
| 553 | ||
| 554 | /** | |
| 555 | * Returns the stroke used to draw the minor tick marks. | |
| 556 | * | |
| 557 | * @return The paint (never null). | |
| 558 | * | |
| 559 | * @see #setMinorTickStroke(Stroke) | |
| 560 | * | |
| 561 | * @since 1.0.8 | |
| 562 | */ | |
| 563 | public Stroke getMinorTickStroke() { | |
| 564 |
1
1. getMinorTickStroke : mutated return of Object value for org/jfree/chart/plot/dial/StandardDialScale::getMinorTickStroke to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return this.minorTickStroke; |
| 565 | } | |
| 566 | ||
| 567 | /** | |
| 568 | * Sets the stroke used to draw the minor tick marks and sends a | |
| 569 | * {@link DialLayerChangeEvent} to all registered listeners. | |
| 570 | * | |
| 571 | * @param stroke the stroke (null not permitted). | |
| 572 | * | |
| 573 | * @see #getMinorTickStroke() | |
| 574 | * | |
| 575 | * @since 1.0.8 | |
| 576 | */ | |
| 577 | public void setMinorTickStroke(Stroke stroke) { | |
| 578 |
1
1. setMinorTickStroke : negated conditional → NO_COVERAGE |
if (stroke == null) { |
| 579 | throw new IllegalArgumentException("Null 'stroke' argument."); | |
| 580 | } | |
| 581 | this.minorTickStroke = stroke; | |
| 582 |
1
1. setMinorTickStroke : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → NO_COVERAGE |
notifyListeners(new DialLayerChangeEvent(this)); |
| 583 | } | |
| 584 | ||
| 585 | /** | |
| 586 | * Returns the tick label offset. | |
| 587 | * | |
| 588 | * @return The tick label offset. | |
| 589 | * | |
| 590 | * @see #setTickLabelOffset(double) | |
| 591 | */ | |
| 592 | public double getTickLabelOffset() { | |
| 593 |
1
1. getTickLabelOffset : replaced return of double value with -(x + 1) for org/jfree/chart/plot/dial/StandardDialScale::getTickLabelOffset → NO_COVERAGE |
return this.tickLabelOffset; |
| 594 | } | |
| 595 | ||
| 596 | /** | |
| 597 | * Sets the tick label offset and sends a {@link DialLayerChangeEvent} to | |
| 598 | * all registered listeners. | |
| 599 | * | |
| 600 | * @param offset the offset. | |
| 601 | * | |
| 602 | * @see #getTickLabelOffset() | |
| 603 | */ | |
| 604 | public void setTickLabelOffset(double offset) { | |
| 605 | this.tickLabelOffset = offset; | |
| 606 |
1
1. setTickLabelOffset : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → SURVIVED |
notifyListeners(new DialLayerChangeEvent(this)); |
| 607 | } | |
| 608 | ||
| 609 | /** | |
| 610 | * Returns the font used to draw the tick labels. | |
| 611 | * | |
| 612 | * @return The font (never null). | |
| 613 | * | |
| 614 | * @see #setTickLabelFont(Font) | |
| 615 | */ | |
| 616 | public Font getTickLabelFont() { | |
| 617 |
1
1. getTickLabelFont : mutated return of Object value for org/jfree/chart/plot/dial/StandardDialScale::getTickLabelFont to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return this.tickLabelFont; |
| 618 | } | |
| 619 | ||
| 620 | /** | |
| 621 | * Sets the font used to display the tick labels and sends a | |
| 622 | * {@link DialLayerChangeEvent} to all registered listeners. | |
| 623 | * | |
| 624 | * @param font the font (null not permitted). | |
| 625 | * | |
| 626 | * @see #getTickLabelFont() | |
| 627 | */ | |
| 628 | public void setTickLabelFont(Font font) { | |
| 629 |
1
1. setTickLabelFont : negated conditional → KILLED |
if (font == null) { |
| 630 | throw new IllegalArgumentException("Null 'font' argument."); | |
| 631 | } | |
| 632 | this.tickLabelFont = font; | |
| 633 |
1
1. setTickLabelFont : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → SURVIVED |
notifyListeners(new DialLayerChangeEvent(this)); |
| 634 | } | |
| 635 | ||
| 636 | /** | |
| 637 | * Returns the paint used to draw the tick labels. | |
| 638 | * | |
| 639 | * @return The paint (null not permitted). | |
| 640 | * | |
| 641 | * @see #setTickLabelPaint(Paint) | |
| 642 | */ | |
| 643 | public Paint getTickLabelPaint() { | |
| 644 |
1
1. getTickLabelPaint : mutated return of Object value for org/jfree/chart/plot/dial/StandardDialScale::getTickLabelPaint to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return this.tickLabelPaint; |
| 645 | } | |
| 646 | ||
| 647 | /** | |
| 648 | * Sets the paint used to draw the tick labels and sends a | |
| 649 | * {@link DialLayerChangeEvent} to all registered listeners. | |
| 650 | * | |
| 651 | * @param paint the paint (null not permitted). | |
| 652 | */ | |
| 653 | public void setTickLabelPaint(Paint paint) { | |
| 654 |
1
1. setTickLabelPaint : negated conditional → KILLED |
if (paint == null) { |
| 655 | throw new IllegalArgumentException("Null 'paint' argument."); | |
| 656 | } | |
| 657 | this.tickLabelPaint = paint; | |
| 658 |
1
1. setTickLabelPaint : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → SURVIVED |
notifyListeners(new DialLayerChangeEvent(this)); |
| 659 | } | |
| 660 | ||
| 661 | /** | |
| 662 | * Returns true if the tick labels should be displayed, | |
| 663 | * and false otherwise. | |
| 664 | * | |
| 665 | * @return A boolean. | |
| 666 | * | |
| 667 | * @see #setTickLabelsVisible(boolean) | |
| 668 | */ | |
| 669 | public boolean getTickLabelsVisible() { | |
| 670 |
1
1. getTickLabelsVisible : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return this.tickLabelsVisible; |
| 671 | } | |
| 672 | ||
| 673 | /** | |
| 674 | * Sets the flag that controls whether or not the tick labels are | |
| 675 | * displayed, and sends a {@link DialLayerChangeEvent} to all registered | |
| 676 | * listeners. | |
| 677 | * | |
| 678 | * @param visible the new flag value. | |
| 679 | * | |
| 680 | * @see #getTickLabelsVisible() | |
| 681 | */ | |
| 682 | public void setTickLabelsVisible(boolean visible) { | |
| 683 | this.tickLabelsVisible = visible; | |
| 684 |
1
1. setTickLabelsVisible : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → SURVIVED |
notifyListeners(new DialLayerChangeEvent(this)); |
| 685 | } | |
| 686 | ||
| 687 | /** | |
| 688 | * Returns the number formatter used to convert the tick label values to | |
| 689 | * strings. | |
| 690 | * | |
| 691 | * @return The formatter (never null). | |
| 692 | * | |
| 693 | * @see #setTickLabelFormatter(NumberFormat) | |
| 694 | */ | |
| 695 | public NumberFormat getTickLabelFormatter() { | |
| 696 |
1
1. getTickLabelFormatter : mutated return of Object value for org/jfree/chart/plot/dial/StandardDialScale::getTickLabelFormatter to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return this.tickLabelFormatter; |
| 697 | } | |
| 698 | ||
| 699 | /** | |
| 700 | * Sets the number formatter used to convert the tick label values to | |
| 701 | * strings, and sends a {@link DialLayerChangeEvent} to all registered | |
| 702 | * listeners. | |
| 703 | * | |
| 704 | * @param formatter the formatter (null not permitted). | |
| 705 | * | |
| 706 | * @see #getTickLabelFormatter() | |
| 707 | */ | |
| 708 | public void setTickLabelFormatter(NumberFormat formatter) { | |
| 709 |
1
1. setTickLabelFormatter : negated conditional → NO_COVERAGE |
if (formatter == null) { |
| 710 | throw new IllegalArgumentException("Null 'formatter' argument."); | |
| 711 | } | |
| 712 | this.tickLabelFormatter = formatter; | |
| 713 |
1
1. setTickLabelFormatter : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → NO_COVERAGE |
notifyListeners(new DialLayerChangeEvent(this)); |
| 714 | } | |
| 715 | ||
| 716 | /** | |
| 717 | * Returns a flag that controls whether or not the first tick label is | |
| 718 | * visible. | |
| 719 | * | |
| 720 | * @return A boolean. | |
| 721 | * | |
| 722 | * @see #setFirstTickLabelVisible(boolean) | |
| 723 | */ | |
| 724 | public boolean getFirstTickLabelVisible() { | |
| 725 |
1
1. getFirstTickLabelVisible : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return this.firstTickLabelVisible; |
| 726 | } | |
| 727 | ||
| 728 | /** | |
| 729 | * Sets a flag that controls whether or not the first tick label is | |
| 730 | * visible, and sends a {@link DialLayerChangeEvent} to all registered | |
| 731 | * listeners. | |
| 732 | * | |
| 733 | * @param visible the new flag value. | |
| 734 | * | |
| 735 | * @see #getFirstTickLabelVisible() | |
| 736 | */ | |
| 737 | public void setFirstTickLabelVisible(boolean visible) { | |
| 738 | this.firstTickLabelVisible = visible; | |
| 739 |
1
1. setFirstTickLabelVisible : removed call to org/jfree/chart/plot/dial/StandardDialScale::notifyListeners → NO_COVERAGE |
notifyListeners(new DialLayerChangeEvent(this)); |
| 740 | } | |
| 741 | ||
| 742 | /** | |
| 743 | * Returns true to indicate that this layer should be | |
| 744 | * clipped within the dial window. | |
| 745 | * | |
| 746 | * @return true. | |
| 747 | */ | |
| 748 | public boolean isClippedToWindow() { | |
| 749 |
1
1. isClippedToWindow : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return true; |
| 750 | } | |
| 751 | ||
| 752 | /** | |
| 753 | * Draws the scale on the dial plot. | |
| 754 | * | |
| 755 | * @param g2 the graphics target (null not permitted). | |
| 756 | * @param plot the dial plot (null not permitted). | |
| 757 | * @param frame the reference frame that is used to construct the | |
| 758 | * geometry of the plot (null not permitted). | |
| 759 | * @param view the visible part of the plot (null not | |
| 760 | * permitted). | |
| 761 | */ | |
| 762 | public void draw(Graphics2D g2, DialPlot plot, Rectangle2D frame, | |
| 763 | Rectangle2D view) { | |
| 764 | ||
| 765 | Rectangle2D arcRect = DialPlot.rectangleByRadius(frame, | |
| 766 | this.tickRadius, this.tickRadius); | |
| 767 |
2
1. draw : Replaced double subtraction with addition → NO_COVERAGE 2. draw : Replaced double subtraction with addition → NO_COVERAGE |
Rectangle2D arcRectMajor = DialPlot.rectangleByRadius(frame, |
| 768 | this.tickRadius - this.majorTickLength, | |
| 769 | this.tickRadius - this.majorTickLength); | |
| 770 | Rectangle2D arcRectMinor = arcRect; | |
| 771 |
4
1. draw : changed conditional boundary → NO_COVERAGE 2. draw : changed conditional boundary → NO_COVERAGE 3. draw : negated conditional → NO_COVERAGE 4. draw : negated conditional → NO_COVERAGE |
if (this.minorTickCount > 0 && this.minorTickLength > 0.0) { |
| 772 |
2
1. draw : Replaced double subtraction with addition → NO_COVERAGE 2. draw : Replaced double subtraction with addition → NO_COVERAGE |
arcRectMinor = DialPlot.rectangleByRadius(frame, |
| 773 | this.tickRadius - this.minorTickLength, | |
| 774 | this.tickRadius - this.minorTickLength); | |
| 775 | } | |
| 776 |
2
1. draw : Replaced double subtraction with addition → NO_COVERAGE 2. draw : Replaced double subtraction with addition → NO_COVERAGE |
Rectangle2D arcRectForLabels = DialPlot.rectangleByRadius(frame, |
| 777 | this.tickRadius - this.tickLabelOffset, | |
| 778 | this.tickRadius - this.tickLabelOffset); | |
| 779 | ||
| 780 | boolean firstLabel = true; | |
| 781 | ||
| 782 | Arc2D arc = new Arc2D.Double(); | |
| 783 | Line2D workingLine = new Line2D.Double(); | |
| 784 |
2
1. draw : changed conditional boundary → NO_COVERAGE 2. draw : negated conditional → NO_COVERAGE |
for (double v = this.lowerBound; v <= this.upperBound; |
| 785 |
1
1. draw : Replaced double addition with subtraction → NO_COVERAGE |
v += this.majorTickIncrement) { |
| 786 |
2
1. draw : Replaced double subtraction with addition → NO_COVERAGE 2. draw : removed call to java/awt/geom/Arc2D::setArc → NO_COVERAGE |
arc.setArc(arcRect, this.startAngle, valueToAngle(v) |
| 787 | - this.startAngle, Arc2D.OPEN); | |
| 788 | Point2D pt0 = arc.getEndPoint(); | |
| 789 |
2
1. draw : Replaced double subtraction with addition → NO_COVERAGE 2. draw : removed call to java/awt/geom/Arc2D::setArc → NO_COVERAGE |
arc.setArc(arcRectMajor, this.startAngle, valueToAngle(v) |
| 790 | - this.startAngle, Arc2D.OPEN); | |
| 791 | Point2D pt1 = arc.getEndPoint(); | |
| 792 |
1
1. draw : removed call to java/awt/Graphics2D::setPaint → NO_COVERAGE |
g2.setPaint(this.majorTickPaint); |
| 793 |
1
1. draw : removed call to java/awt/Graphics2D::setStroke → NO_COVERAGE |
g2.setStroke(this.majorTickStroke); |
| 794 |
1
1. draw : removed call to java/awt/geom/Line2D::setLine → NO_COVERAGE |
workingLine.setLine(pt0, pt1); |
| 795 |
1
1. draw : removed call to java/awt/Graphics2D::draw → NO_COVERAGE |
g2.draw(workingLine); |
| 796 |
2
1. draw : Replaced double subtraction with addition → NO_COVERAGE 2. draw : removed call to java/awt/geom/Arc2D::setArc → NO_COVERAGE |
arc.setArc(arcRectForLabels, this.startAngle, valueToAngle(v) |
| 797 | - this.startAngle, Arc2D.OPEN); | |
| 798 | Point2D pt2 = arc.getEndPoint(); | |
| 799 | ||
| 800 |
1
1. draw : negated conditional → NO_COVERAGE |
if (this.tickLabelsVisible) { |
| 801 |
2
1. draw : negated conditional → NO_COVERAGE 2. draw : negated conditional → NO_COVERAGE |
if (!firstLabel || this.firstTickLabelVisible) { |
| 802 |
1
1. draw : removed call to java/awt/Graphics2D::setFont → NO_COVERAGE |
g2.setFont(this.tickLabelFont); |
| 803 |
1
1. draw : removed call to java/awt/Graphics2D::setPaint → NO_COVERAGE |
g2.setPaint(this.tickLabelPaint); |
| 804 | TextUtilities.drawAlignedString( | |
| 805 | this.tickLabelFormatter.format(v), g2, | |
| 806 | (float) pt2.getX(), (float) pt2.getY(), | |
| 807 | TextAnchor.CENTER); | |
| 808 | } | |
| 809 | } | |
| 810 | firstLabel = false; | |
| 811 | ||
| 812 | // now do the minor tick marks | |
| 813 |
4
1. draw : changed conditional boundary → NO_COVERAGE 2. draw : changed conditional boundary → NO_COVERAGE 3. draw : negated conditional → NO_COVERAGE 4. draw : negated conditional → NO_COVERAGE |
if (this.minorTickCount > 0 && this.minorTickLength > 0.0) { |
| 814 |
2
1. draw : Replaced integer addition with subtraction → NO_COVERAGE 2. draw : Replaced double division with multiplication → NO_COVERAGE |
double minorTickIncrement = this.majorTickIncrement |
| 815 | / (this.minorTickCount + 1); | |
| 816 |
3
1. draw : changed conditional boundary → NO_COVERAGE 2. draw : Changed increment from 1 to -1 → NO_COVERAGE 3. draw : negated conditional → NO_COVERAGE |
for (int i = 0; i < this.minorTickCount; i++) { |
| 817 |
3
1. draw : Replaced integer addition with subtraction → NO_COVERAGE 2. draw : Replaced double multiplication with division → NO_COVERAGE 3. draw : Replaced double addition with subtraction → NO_COVERAGE |
double vv = v + ((i + 1) * minorTickIncrement); |
| 818 |
2
1. draw : changed conditional boundary → NO_COVERAGE 2. draw : negated conditional → NO_COVERAGE |
if (vv >= this.upperBound) { |
| 819 | break; | |
| 820 | } | |
| 821 | double angle = valueToAngle(vv); | |
| 822 | ||
| 823 |
2
1. draw : Replaced double subtraction with addition → NO_COVERAGE 2. draw : removed call to java/awt/geom/Arc2D::setArc → NO_COVERAGE |
arc.setArc(arcRect, this.startAngle, angle |
| 824 | - this.startAngle, Arc2D.OPEN); | |
| 825 | pt0 = arc.getEndPoint(); | |
| 826 |
2
1. draw : Replaced double subtraction with addition → NO_COVERAGE 2. draw : removed call to java/awt/geom/Arc2D::setArc → NO_COVERAGE |
arc.setArc(arcRectMinor, this.startAngle, angle |
| 827 | - this.startAngle, Arc2D.OPEN); | |
| 828 | Point2D pt3 = arc.getEndPoint(); | |
| 829 |
1
1. draw : removed call to java/awt/Graphics2D::setStroke → NO_COVERAGE |
g2.setStroke(this.minorTickStroke); |
| 830 |
1
1. draw : removed call to java/awt/Graphics2D::setPaint → NO_COVERAGE |
g2.setPaint(this.minorTickPaint); |
| 831 |
1
1. draw : removed call to java/awt/geom/Line2D::setLine → NO_COVERAGE |
workingLine.setLine(pt0, pt3); |
| 832 |
1
1. draw : removed call to java/awt/Graphics2D::draw → NO_COVERAGE |
g2.draw(workingLine); |
| 833 | } | |
| 834 | } | |
| 835 | ||
| 836 | } | |
| 837 | } | |
| 838 | ||
| 839 | /** | |
| 840 | * Converts a data value to an angle against this scale. | |
| 841 | * | |
| 842 | * @param value the data value. | |
| 843 | * | |
| 844 | * @return The angle (in degrees, using the same specification as Java's | |
| 845 | * Arc2D class). | |
| 846 | * | |
| 847 | * @see #angleToValue(double) | |
| 848 | */ | |
| 849 | public double valueToAngle(double value) { | |
| 850 |
1
1. valueToAngle : Replaced double subtraction with addition → NO_COVERAGE |
double range = this.upperBound - this.lowerBound; |
| 851 |
1
1. valueToAngle : Replaced double division with multiplication → NO_COVERAGE |
double unit = this.extent / range; |
| 852 |
4
1. valueToAngle : Replaced double subtraction with addition → NO_COVERAGE 2. valueToAngle : Replaced double multiplication with division → NO_COVERAGE 3. valueToAngle : Replaced double addition with subtraction → NO_COVERAGE 4. valueToAngle : replaced return of double value with -(x + 1) for org/jfree/chart/plot/dial/StandardDialScale::valueToAngle → NO_COVERAGE |
return this.startAngle + unit * (value - this.lowerBound); |
| 853 | } | |
| 854 | ||
| 855 | /** | |
| 856 | * Converts the given angle to a data value, based on this scale. | |
| 857 | * | |
| 858 | * @param angle the angle. | |
| 859 | * | |
| 860 | * @return The data value. | |
| 861 | * | |
| 862 | * @see #valueToAngle(double) | |
| 863 | */ | |
| 864 | public double angleToValue(double angle) { | |
| 865 |
1
1. angleToValue : replaced return of double value with -(x + 1) for org/jfree/chart/plot/dial/StandardDialScale::angleToValue → NO_COVERAGE |
return Double.NaN; // FIXME |
| 866 | } | |
| 867 | ||
| 868 | /** | |
| 869 | * Tests this StandardDialScale for equality with an arbitrary | |
| 870 | * object. | |
| 871 | * | |
| 872 | * @param obj the object (null permitted). | |
| 873 | * | |
| 874 | * @return A boolean. | |
| 875 | */ | |
| 876 | public boolean equals(Object obj) { | |
| 877 |
1
1. equals : negated conditional → KILLED |
if (obj == this) { |
| 878 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return true; |
| 879 | } | |
| 880 |
1
1. equals : negated conditional → KILLED |
if (!(obj instanceof StandardDialScale)) { |
| 881 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return false; |
| 882 | } | |
| 883 | StandardDialScale that = (StandardDialScale) obj; | |
| 884 |
1
1. equals : negated conditional → KILLED |
if (this.lowerBound != that.lowerBound) { |
| 885 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 886 | } | |
| 887 |
1
1. equals : negated conditional → KILLED |
if (this.upperBound != that.upperBound) { |
| 888 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 889 | } | |
| 890 |
1
1. equals : negated conditional → KILLED |
if (this.startAngle != that.startAngle) { |
| 891 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 892 | } | |
| 893 |
1
1. equals : negated conditional → KILLED |
if (this.extent != that.extent) { |
| 894 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 895 | } | |
| 896 |
1
1. equals : negated conditional → KILLED |
if (this.tickRadius != that.tickRadius) { |
| 897 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 898 | } | |
| 899 |
1
1. equals : negated conditional → KILLED |
if (this.majorTickIncrement != that.majorTickIncrement) { |
| 900 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 901 | } | |
| 902 |
1
1. equals : negated conditional → KILLED |
if (this.majorTickLength != that.majorTickLength) { |
| 903 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 904 | } | |
| 905 |
1
1. equals : negated conditional → KILLED |
if (!PaintUtilities.equal(this.majorTickPaint, that.majorTickPaint)) { |
| 906 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 907 | } | |
| 908 |
1
1. equals : negated conditional → KILLED |
if (!this.majorTickStroke.equals(that.majorTickStroke)) { |
| 909 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 910 | } | |
| 911 |
1
1. equals : negated conditional → KILLED |
if (this.minorTickCount != that.minorTickCount) { |
| 912 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 913 | } | |
| 914 |
1
1. equals : negated conditional → KILLED |
if (this.minorTickLength != that.minorTickLength) { |
| 915 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 916 | } | |
| 917 |
1
1. equals : negated conditional → KILLED |
if (!PaintUtilities.equal(this.minorTickPaint, that.minorTickPaint)) { |
| 918 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return false; |
| 919 | } | |
| 920 |
1
1. equals : negated conditional → KILLED |
if (!this.minorTickStroke.equals(that.minorTickStroke)) { |
| 921 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return false; |
| 922 | } | |
| 923 |
1
1. equals : negated conditional → KILLED |
if (this.tickLabelsVisible != that.tickLabelsVisible) { |
| 924 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 925 | } | |
| 926 |
1
1. equals : negated conditional → KILLED |
if (this.tickLabelOffset != that.tickLabelOffset) { |
| 927 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 928 | } | |
| 929 |
1
1. equals : negated conditional → KILLED |
if (!this.tickLabelFont.equals(that.tickLabelFont)) { |
| 930 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 931 | } | |
| 932 |
1
1. equals : negated conditional → KILLED |
if (!PaintUtilities.equal(this.tickLabelPaint, that.tickLabelPaint)) { |
| 933 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return false; |
| 934 | } | |
| 935 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
return super.equals(obj); |
| 936 | } | |
| 937 | ||
| 938 | /** | |
| 939 | * Returns a hash code for this instance. | |
| 940 | * | |
| 941 | * @return A hash code. | |
| 942 | */ | |
| 943 | public int hashCode() { | |
| 944 | int result = 193; | |
| 945 | // lowerBound | |
| 946 | long temp = Double.doubleToLongBits(this.lowerBound); | |
| 947 |
4
1. hashCode : Replaced integer multiplication with division → SURVIVED 2. hashCode : Replaced Unsigned Shift Right with Shift Left → SURVIVED 3. hashCode : Replaced XOR with AND → SURVIVED 4. hashCode : Replaced integer addition with subtraction → SURVIVED |
result = 37 * result + (int) (temp ^ (temp >>> 32)); |
| 948 | // upperBound | |
| 949 | temp = Double.doubleToLongBits(this.upperBound); | |
| 950 |
4
1. hashCode : Replaced integer multiplication with division → SURVIVED 2. hashCode : Replaced Unsigned Shift Right with Shift Left → SURVIVED 3. hashCode : Replaced XOR with AND → SURVIVED 4. hashCode : Replaced integer addition with subtraction → SURVIVED |
result = 37 * result + (int) (temp ^ (temp >>> 32)); |
| 951 | // startAngle | |
| 952 | temp = Double.doubleToLongBits(this.startAngle); | |
| 953 |
4
1. hashCode : Replaced integer multiplication with division → SURVIVED 2. hashCode : Replaced Unsigned Shift Right with Shift Left → SURVIVED 3. hashCode : Replaced XOR with AND → SURVIVED 4. hashCode : Replaced integer addition with subtraction → SURVIVED |
result = 37 * result + (int) (temp ^ (temp >>> 32)); |
| 954 | // extent | |
| 955 | temp = Double.doubleToLongBits(this.extent); | |
| 956 |
4
1. hashCode : Replaced integer multiplication with division → SURVIVED 2. hashCode : Replaced Unsigned Shift Right with Shift Left → SURVIVED 3. hashCode : Replaced XOR with AND → SURVIVED 4. hashCode : Replaced integer addition with subtraction → SURVIVED |
result = 37 * result + (int) (temp ^ (temp >>> 32)); |
| 957 | // tickRadius | |
| 958 | temp = Double.doubleToLongBits(this.tickRadius); | |
| 959 |
4
1. hashCode : Replaced integer multiplication with division → SURVIVED 2. hashCode : Replaced Unsigned Shift Right with Shift Left → SURVIVED 3. hashCode : Replaced XOR with AND → SURVIVED 4. hashCode : Replaced integer addition with subtraction → SURVIVED |
result = 37 * result + (int) (temp ^ (temp >>> 32)); |
| 960 | // majorTickIncrement | |
| 961 | // majorTickLength | |
| 962 | // majorTickPaint | |
| 963 | // majorTickStroke | |
| 964 | // minorTickCount | |
| 965 | // minorTickLength | |
| 966 | // minorTickPaint | |
| 967 | // minorTickStroke | |
| 968 | // tickLabelOffset | |
| 969 | // tickLabelFont | |
| 970 | // tickLabelsVisible | |
| 971 | // tickLabelFormatter | |
| 972 | // firstTickLabelsVisible | |
| 973 |
1
1. hashCode : replaced return of integer sized value with (x == 0 ? 1 : 0) → SURVIVED |
return result; |
| 974 | } | |
| 975 | ||
| 976 | /** | |
| 977 | * Returns a clone of this instance. | |
| 978 | * | |
| 979 | * @return A clone. | |
| 980 | * | |
| 981 | * @throws CloneNotSupportedException if this instance is not cloneable. | |
| 982 | */ | |
| 983 | public Object clone() throws CloneNotSupportedException { | |
| 984 |
1
1. clone : mutated return of Object value for org/jfree/chart/plot/dial/StandardDialScale::clone to ( if (x != null) null else throw new RuntimeException ) → KILLED |
return super.clone(); |
| 985 | } | |
| 986 | ||
| 987 | /** | |
| 988 | * Provides serialization support. | |
| 989 | * | |
| 990 | * @param stream the output stream. | |
| 991 | * | |
| 992 | * @throws IOException if there is an I/O error. | |
| 993 | */ | |
| 994 | private void writeObject(ObjectOutputStream stream) throws IOException { | |
| 995 |
1
1. writeObject : removed call to java/io/ObjectOutputStream::defaultWriteObject → KILLED |
stream.defaultWriteObject(); |
| 996 |
1
1. writeObject : removed call to org/jfree/chart/util/SerialUtilities::writePaint → KILLED |
SerialUtilities.writePaint(this.majorTickPaint, stream); |
| 997 |
1
1. writeObject : removed call to org/jfree/chart/util/SerialUtilities::writeStroke → KILLED |
SerialUtilities.writeStroke(this.majorTickStroke, stream); |
| 998 |
1
1. writeObject : removed call to org/jfree/chart/util/SerialUtilities::writePaint → KILLED |
SerialUtilities.writePaint(this.minorTickPaint, stream); |
| 999 |
1
1. writeObject : removed call to org/jfree/chart/util/SerialUtilities::writeStroke → KILLED |
SerialUtilities.writeStroke(this.minorTickStroke, stream); |
| 1000 |
1
1. writeObject : removed call to org/jfree/chart/util/SerialUtilities::writePaint → KILLED |
SerialUtilities.writePaint(this.tickLabelPaint, stream); |
| 1001 | } | |
| 1002 | ||
| 1003 | /** | |
| 1004 | * Provides serialization support. | |
| 1005 | * | |
| 1006 | * @param stream the input stream. | |
| 1007 | * | |
| 1008 | * @throws IOException if there is an I/O error. | |
| 1009 | * @throws ClassNotFoundException if there is a classpath problem. | |
| 1010 | */ | |
| 1011 | private void readObject(ObjectInputStream stream) | |
| 1012 | throws IOException, ClassNotFoundException { | |
| 1013 |
1
1. readObject : removed call to java/io/ObjectInputStream::defaultReadObject → KILLED |
stream.defaultReadObject(); |
| 1014 | this.majorTickPaint = SerialUtilities.readPaint(stream); | |
| 1015 | this.majorTickStroke = SerialUtilities.readStroke(stream); | |
| 1016 | this.minorTickPaint = SerialUtilities.readPaint(stream); | |
| 1017 | this.minorTickStroke = SerialUtilities.readStroke(stream); | |
| 1018 | this.tickLabelPaint = SerialUtilities.readPaint(stream); | |
| 1019 | } | |
| 1020 | ||
| 1021 | } | |
Mutations | ||
| 235 |
1.1 |
|
| 250 |
1.1 |
|
| 263 |
1.1 |
|
| 278 |
1.1 |
|
| 290 |
1.1 |
|
| 303 |
1.1 |
|
| 314 |
1.1 |
|
| 327 |
1.1 |
|
| 339 |
1.1 |
|
| 351 |
1.1 2.2 |
|
| 356 |
1.1 |
|
| 367 |
1.1 |
|
| 379 |
1.1 2.2 |
|
| 384 |
1.1 |
|
| 397 |
1.1 |
|
| 409 |
1.1 2.2 |
|
| 413 |
1.1 |
|
| 424 |
1.1 |
|
| 436 |
1.1 |
|
| 440 |
1.1 |
|
| 451 |
1.1 |
|
| 463 |
1.1 |
|
| 467 |
1.1 |
|
| 478 |
1.1 |
|
| 490 |
1.1 2.2 |
|
| 495 |
1.1 |
|
| 508 |
1.1 |
|
| 520 |
1.1 2.2 |
|
| 524 |
1.1 |
|
| 535 |
1.1 |
|
| 547 |
1.1 |
|
| 551 |
1.1 |
|
| 564 |
1.1 |
|
| 578 |
1.1 |
|
| 582 |
1.1 |
|
| 593 |
1.1 |
|
| 606 |
1.1 |
|
| 617 |
1.1 |
|
| 629 |
1.1 |
|
| 633 |
1.1 |
|
| 644 |
1.1 |
|
| 654 |
1.1 |
|
| 658 |
1.1 |
|
| 670 |
1.1 |
|
| 684 |
1.1 |
|
| 696 |
1.1 |
|
| 709 |
1.1 |
|
| 713 |
1.1 |
|
| 725 |
1.1 |
|
| 739 |
1.1 |
|
| 749 |
1.1 |
|
| 767 |
1.1 2.2 |
|
| 771 |
1.1 2.2 3.3 4.4 |
|
| 772 |
1.1 2.2 |
|
| 776 |
1.1 2.2 |
|
| 784 |
1.1 2.2 |
|
| 785 |
1.1 |
|
| 786 |
1.1 2.2 |
|
| 789 |
1.1 2.2 |
|
| 792 |
1.1 |
|
| 793 |
1.1 |
|
| 794 |
1.1 |
|
| 795 |
1.1 |
|
| 796 |
1.1 2.2 |
|
| 800 |
1.1 |
|
| 801 |
1.1 2.2 |
|
| 802 |
1.1 |
|
| 803 |
1.1 |
|
| 813 |
1.1 2.2 3.3 4.4 |
|
| 814 |
1.1 2.2 |
|
| 816 |
1.1 2.2 3.3 |
|
| 817 |
1.1 2.2 3.3 |
|
| 818 |
1.1 2.2 |
|
| 823 |
1.1 2.2 |
|
| 826 |
1.1 2.2 |
|
| 829 |
1.1 |
|
| 830 |
1.1 |
|
| 831 |
1.1 |
|
| 832 |
1.1 |
|
| 850 |
1.1 |
|
| 851 |
1.1 |
|
| 852 |
1.1 2.2 3.3 4.4 |
|
| 865 |
1.1 |
|
| 877 |
1.1 |
|
| 878 |
1.1 |
|
| 880 |
1.1 |
|
| 881 |
1.1 |
|
| 884 |
1.1 |
|
| 885 |
1.1 |
|
| 887 |
1.1 |
|
| 888 |
1.1 |
|
| 890 |
1.1 |
|
| 891 |
1.1 |
|
| 893 |
1.1 |
|
| 894 |
1.1 |
|
| 896 |
1.1 |
|
| 897 |
1.1 |
|
| 899 |
1.1 |
|
| 900 |
1.1 |
|
| 902 |
1.1 |
|
| 903 |
1.1 |
|
| 905 |
1.1 |
|
| 906 |
1.1 |
|
| 908 |
1.1 |
|
| 909 |
1.1 |
|
| 911 |
1.1 |
|
| 912 |
1.1 |
|
| 914 |
1.1 |
|
| 915 |
1.1 |
|
| 917 |
1.1 |
|
| 918 |
1.1 |
|
| 920 |
1.1 |
|
| 921 |
1.1 |
|
| 923 |
1.1 |
|
| 924 |
1.1 |
|
| 926 |
1.1 |
|
| 927 |
1.1 |
|
| 929 |
1.1 |
|
| 930 |
1.1 |
|
| 932 |
1.1 |
|
| 933 |
1.1 |
|
| 935 |
1.1 |
|
| 947 |
1.1 2.2 3.3 4.4 |
|
| 950 |
1.1 2.2 3.3 4.4 |
|
| 953 |
1.1 2.2 3.3 4.4 |
|
| 956 |
1.1 2.2 3.3 4.4 |
|
| 959 |
1.1 2.2 3.3 4.4 |
|
| 973 |
1.1 |
|
| 984 |
1.1 |
|
| 995 |
1.1 |
|
| 996 |
1.1 |
|
| 997 |
1.1 |
|
| 998 |
1.1 |
|
| 999 |
1.1 |
|
| 1000 |
1.1 |
|
| 1013 |
1.1 |


Scream 3
The "Scream" series comes to a close (hopefully) with this installment not really starring Neve Campbell.
The premise offers a lot of possibilities but the execution of the story is mediocre. What's supposed to be funny and satirical is only good for the occasional gaffaw but not too many belly laughs or sly zingers the original "Scream" offered. In fact it's not really accurate to classify this film as a horror, there's really nothing scary about it. It's more of a lame action/thriller since there doesn't seem to be anything remotely supernatural.
Teenyboppers will love it, but the rest of us will just have to accept the fact this franchise ran out of steam fast.
GRADE: C+
Chad'z Movie Page is back! New reviews of the latest movies in easy-to-swallow capsule form with the trendy, Entertainment Weekly-style of letter grades instead of the old star system. Have I sold out? Visit my page and decide for yourself ;-)
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


[an error occurred while processing this directive]
[an error occurred while processing this directive]The SAS Macro language enables you to write programs that generate SAS code, which is then submitted to the SAS interpreter for execution. A macro can be as simple as text substitution, creating a short placeholder for a long string of code, or a macro can generate SAS code dynamically, generating different code depending upon some input.
We will want to distinguish between macro variables, which are simple placeholders, and macros, which are usually code-generating.
Working with macro variables is a two-part process. First you assign a value to a macro variable - this value will be some string of text. Then you use the macro variable to substitute that text into some block of SAS code. This is called macro resolution.
Although macro values are text, you typically do not use quotes in defining them - if you do, the quotes are included when the text is substituted.
A macro value will typically be a token, a token fragment, or a collection of tokens. To make a macro value include more than one SAS statement requires the use of macro functions, and this is more typically done as a macro than as a macro variable. Where the value is a token fragment to be combined with a suffix, the macro variable is called with a leading ampersand and a trailing period.
A macro value may be hard-coded as a constant, but it can also be defined as the result of macro functions. Whatever is on the right-hand side of the equals sign in a %LET statement is evaluated before the assignment is made.
Note that when you create a macro variable, you give it a SAS name following the same rules you use for variable names within data sets (no spaces, no special characters, capitalization does not matter). When go to use the macro variable, the name is always prefixed by an ampersand, "&".
libname y "y:\sas\macros";
libname library (y);
* Assigning values to macro variables;
%let dsn = y.nlswomen;
%let mstatus = R0002400 R0133700 /*R0205100 R0288200
R0308300 R0367600 R0455600 R0491300 R0661400 R0666600 R0721700
R0869900 R0997700 R1290700 R1664710 R3507200 R4278200
R5447500 R6516200*/;
* Using the macro variables;
proc freq data=&dsn;
tables &mstatus / nocum;
run;
MAR_STAT, 67
R0002400 Frequency Percent
-----------------------------------------------
MARRIED SPOUSE PRESENT 4064 79.95
MARRIED SPOUSE ABSENT 46 0.90
WIDOWED 145 2.85
DIVORCED 253 4.98
SEPARATED 285 5.61
NEVER MARRIED 290 5.71
MAR_STAT, 71
R0133700 Frequency Percent
-----------------------------------------------
MARRIED SPOUSE PRESENT 3568 77.72
MARRIED SPOUSE ABSENT 27 0.59
WIDOWED 206 4.49
DIVORCED 285 6.21
SEPARATED 282 6.14
NEVER MARRIED 223 4.86
Frequency Missing = 492
By default the code that is echoed in the log is just what you send to the macro interpreter. If you want to see what the code looks like after macro variable substitution, you need to invoke the SAS option SYMBOLGEN. In much of the SAS documentation, macro variables are called "symbols" and lists of macro variables are called "symbol tables". If your code looks like this:
%let dsn = y.nlswomen;
%let mstatus = R0002400 R0133700 ;
proc freq data=&dsn;
tables &mstatus / nocum;
run;
options symbolgen;
proc freq data=&dsn;
tables &mstatus / nocum;
run;
Your log will appear as below. Notice the first PROC FREQ is as it appears before macro variable resolution, while the second PROC FREQ includes notes on the macro values used.
9 proc freq data=&dsn;
10 tables &mstatus / nocum;
11 run;
NOTE: There were 5083 observations read from the data set Y.NLSWOMEN.
NOTE: The PROCEDURE FREQ printed page 1.
NOTE: PROCEDURE FREQ used (Total process time):
real time 0.06 seconds
cpu time 0.01 seconds
12
13 options symbolgen;
14 proc freq data=&dsn;
SYMBOLGEN: Macro variable DSN resolves to y.nlswomen
15
SYMBOLGEN: Macro variable MSTATUS resolves to R0002400 R0133700
15 ! tables &mstatus / nocum;
16 run;
NOTE: There were 5083 observations read from the data set Y.NLSWOMEN.
NOTE: The PROCEDURE FREQ printed page 2.
NOTE: PROCEDURE FREQ used (Total process time):
real time 0.04 seconds
cpu time 0.00 seconds
More examples:
%let test = TEXT;
%put test=&test;
%let test = "TEXT";
%put test=&test;
%LET test = %quote(proc print; run;);
data class; set sashelp.class; run;
&test;
Last Revised: 9/15/2015


It's disconcerting when one pane of an app sees a file is changed but another one refuses to. Doubly so when it's your version control. Eek!
10/22/2009, 2:24:12 PM
Favs: 0
Retweets: 0
link--- layout: tweet ---
It's disconcerting when one pane of an app sees a file is changed but another one refuses to. Doubly so when it's your version control. Eek!
10/22/2009, 2:24:12 PM
Favs: 0
Retweets: 0
link


1
MY ORDER
2
SHIPPING INFO
3
TAKE PAYMENT
Safe money transfer using your bank account. Visa, Maestro, Discover, American Express.
You will be directed to Paystack website to complete your purchase securely.


Adapting Functions
Jul 15, 2017A question came up at Gophercon about using functions as arguments, and what to do when you have a function that you want to use that doesn’t quite match the signature. Here’s an example:
type Translator func(string) string
func RunTwice(translate Translator, input string) string {
return translate(translate(input))
}
Now, what if you want to use RunTwice with a function that needs more inputs than just a string?
func Append(orig, suffix string) string {
return orig + suffix
}
func do() {
orig := "awesome"
bang := "!"
s := RunTwice(Append(orig, )) // wait, that won't work
fmt.Println(s)
}
The answer is the magic of closures. Closures are anonymous functions that “close over” or save copies of all local variables so they can be used later. You can write a closure that captures the bang, and returns a function that’ll have the Translator signature.
func do() string {
orig := "awesome"
bang := "!"
bangit := func(s string) string {
return Append(s, bang)
}
return RunTwice(bangit(orig))
}
Yay, that works. But it’s not reusable outside the do function. That may be fine, it may not. If you want to do it in a reusable way (like, a lot of people may want to adapt Append to return a Translator, you can make a dedicated function for it like this:
func AppendTranslator(suffix string) Translator {
return func(s string) string {
return Append(s, suffix)
}
}
In AppendTranslator, we return a closure that captures the suffix, and returns a function that, when called, will append that suffix to the string passed to the Translator.
And now you can use AppendTranslator with RunTwice.


»Currently available to all the GNOME Teams and developers requesting access to it for downloading and sharing files and folders inherent to their contributions within the GNOME Project. Please get in touch with AndreaVeri for having your account created.«
TL;DR
request an account :)
.bashrc
.gitconfig
.ssh
…
passwords
notifications
fonts
…
Thanks!
Say hi!


Available news by name.
No news available by name.
Available news by context.
No news available by description.


English (US)
English (US)
Bengali (BN)
Sell on Site
Customer Wish
Login
|
Sign Up
Home
Shop
Highlights
HaatBazar
Cattle
Poultry
Aqua
Agri Supply
Feedmill Supply
Pets, Birds & Aquarium Fishes
Gardening
MVV (Most Valuable Vendor)
Trending Categories
Product of the week
HaatBazar
Cattle
Poultry
Aqua
Agri Supply
Feedmill Supply
Pets, Birds & Aquarium fishes
Gardening
Track Order
Customer Care
First and Largest B2B Digital marketplace in Bangladesh
Let us know what you need
Eggs, Chickens, Tools, ...
Get the things you need at your doorstep
24-48 hours Express Delivery
Start selling as a Vendor
Personal / Business
Browse categories to find what you need
Can't find the product you are looking for?
Post it here
I am looking for
Offers
Discounts
Month End Offer
Free Delivery
Campaigns
Promotional Offers
in
HaatBazar
Cattle
Poultry
Aqua
Agri Supply
Feedmill Supply
Pets, Birds & Aquarium Fishes
Gardening
Search
Flash Sale
On Sale Now
Ending in
00
Days
:
00
Hours
:
00
Min
:
00
Sec
See All Deals
Anthrax Livestock Vaccine all vaccine
৳204
৳1,050
-81%
Multivitamin Calcium Powderbulvica
৳204
৳1,050
-81%
Imrab rabies cattle horse sheep vaccine
৳204
৳1,050
-81%
Anthrax Livestock Vaccine all vaccine
৳204
৳1,050
-81%
Multivitamin Calcium Powderbulvica
৳204
৳1,050
-81%
Imrab rabies cattle horse sheep vaccine
৳204
৳1,050
-81%
Featured
Best Seller
New Arrival
Anthrax Livestock Vaccine all vaccine
From ৳204
Anthrax Livestock Vaccine all vaccine
From ৳204
Anthrax Livestock Vaccine all vaccine
From ৳204
Anthrax Livestock Vaccine all vaccine
From ৳204
Anthrax Livestock Vaccine all vaccine
From ৳204
Anthrax Livestock Vaccine all vaccine
From ৳204
Anthrax Livestock Vaccine all vaccine
From ৳204
Best Seller
New Arrival
Featured
Best Seller
New Arrival
Anthrax Livestock Vaccine all vaccine
From ৳204
Anthrax Livestock Vaccine all vaccine
From ৳204
Anthrax Livestock Vaccine all vaccine
From ৳204
Anthrax Livestock Vaccine all vaccine
From ৳204
Anthrax Livestock Vaccine all vaccine
From ৳204
Anthrax Livestock Vaccine all vaccine
From ৳204
Anthrax Livestock Vaccine all vaccine
From ৳204
Best Seller
New Arrival
Featured Products
Updated Everyday
Browse All
Anthrax Livestock Vaccine all vaccine
৳204
৳1,050
-81%
Multivitamin Calcium Powderbulvica
৳204
৳1,050
-81%
Imrab rabies cattle horse sheep vaccine
৳204
৳1,050
-81%
Anthrax Livestock Vaccine all vaccine
৳204
৳1,050
-81%
Multivitamin Calcium Powderbulvica
৳204
৳1,050
-81%
Imrab rabies cattle horse sheep vaccine
৳204
৳1,050
-81%
Just for You
Handpicked by AgroMukam
Browse All
Anthrax Livestock Vaccine all vaccine
৳204
৳1,050
-81%
Multivitamin Calcium Powderbulvica
৳204
৳1,050
-81%
Imrab rabies cattle horse sheep vaccine
৳204
৳1,050
-81%
Anthrax Livestock Vaccine all vaccine
৳204
৳1,050
-81%
Multivitamin Calcium Powderbulvica
৳204
৳1,050
-81%
Imrab rabies cattle horse sheep vaccine
৳204
৳1,050
-81%


| Vendor Name: | BUDGET CAR & TRUCK RENTAL |
|---|---|
| Reference Number: |<PHONE_NUMBER> |
| Contract Date: | 2015-05-26 |
| Description Of Work: | 540 Rental of Motor and Other Vehicles |
| Contract Period: | 2015-05-26 to 2015-11-26 |
| Original Contract Value: | $10,015.43 |
| Contract Value: | $10,015.43 |
| Comments: | This contract was sole-sourced. |


4NV1L H4CK 3 - RAPID_LEAPIFY
Log in with Spotify
Obtain new token using the refresh token
Machine Learning controls
Play
Pause
Next
Previous
Sensor Data (Leap Motion)
Frame data:
Hand data:
Finger data:


Stone Age • Swiss Lake Dwellers, more than 8,000 years ago, learned to mix flour and water which they cooked on heated stones. • The Babylonians, Chileans, Assyrians and Egyptians had used the same procedure of breaking bread. • Royal Egyptian household discovered accidentally that the dough when set aside flowed and expanded. Since then bread was baked in this manner in 17th cebtury. • Scientist found out the cause of the bread expansion through the process of fermentation was brought about by by yeast Baking in Greece • The first public bakeries were established in Greece, sometime between 200 -300 B. C. It was said that the quality of baked product then was comparable to the quality of baked products today. Baking in America • In 1604, baking was brought to America by the Jamestown colonists. The industry flourished with the country in the last half of the 19th century. Construction of ovens and mixing troughs was much improved. A variety of baked products came out. Other baked products such as cakes and pies, biscuits, crackers and cookies were introduced. Wheat and baked products were shipped and introduced to the East. Wheat in the Philippines • Wheat was brought into the country by the Spanish missionaries in the 17th century to make Eucharistic bread. Baking in the Philippines • American occupation brought in flour. • In 1958, the first Philippine flour mill became operational. • Wheat, instead of flour was brought to the country. • For several years, the Philippines depended upon the U. S. for wheat supply. Baking in the Philippines • In 1962, the U. S. Wheat Associates, Inc., came to the Philippines not only to market wheat but also to improve the baking industry. • From 1976 to 1985,eight flour mills were established in different parts of the country. Since then, the industry has provided a means of livelihood for many Filipinos. • Schools have included the offering of baking courses in the curriculum


Knock on ports in a specific order in order to open up a new port
/etc/init.d look for knockd (port-knock daemon)
Default config usually
/etc/default/knockd
or
/etc/knockd.conf
for i in knock port numbers; do nmap -Pn -p $i --host_timeout 201 --max-retries 0 ip_address; done
See Enumeration > Port Knocking


Private
Secure
Affordable
Control
Freedom
Fair
The Particl Market is the new way to buy and sell online.
It enables direct person to person e-commerce. Using peer-to-peer technology, it operates with no central authority or middleman and is exclusively owned and operated by its network of users.
Particl is a true alternative to centralized solutions and offers to everyone the ability to partake in the global economy at nearly zero cost, regardless of its geographical location.
…and let's shop on Open Marketplace together
Riot Discord TelegramThe Particl marketplace provides all the benefits of a blockchain based decentralized marketplace, without any of the standard privacy concessions. Any purchase or sale is executed without revealing your identity, just like in-person cash transactions.
Learn about PrivacyThe Particl Marketplace frees users from maintenance fees, commission fees, data ownership and exploitation, as well as all other inconveniences induced by the usage of centralized e-commerce third parties.
Learn about MAD EscrowAll transactions are secured by academically reviewed and audited cryptography. Particl is designed to offer to users a total data sovereignty and an immunity against digital attacks.
Learn about SecurityThe Particl Open Marketplace protocol does not charge users with more than is necessary for it to operate safely. The processing fees are kept at a bare minimum and are entirely redistributed to the stakers securing the network.
Learn about SavingThe Particl Open Marketplace has been built to work in synergy with multiple cryptocurrencies under the umbrella of the highly secure and private PART coin, to obfuscate the payment.
Learn about Currency Agnosticism


I am a 16 year old kid from San Diego, California. I like to take pictures and mess with computers. This website is an exmaple of both. If you'd like to see more of my computer work, click here. to go to my GitHub
If you would like to see more of my pictures, click here to go to my instagram
Additionally I sometimes play some games if you'd like to add me on steam you can go to my profile by, clicking here, or you can add on battle.net my battle tag is: Super#12890
I already briefly covered what I do but here is a more complete wrap up.
I do photography and mainly either landscape or pets, people aren't really my thing you could say. My favorite subjects are my cats and dog and sunsets in my home town of San Diego. I use either my phone or my Nikon D3200 when I'm taking pictures
When I mess with computers I don't usually do much as far as coding, I mean, this website is just a template I changed around a bit. I mainly focus on networking stuff, such as this website which is selfhosted or my NAS the I built myself.
Feel free to message me on Twitter or Instagram, or to Check out my GitHub!


Description:
Set of Interfaces including the Parameter Concept.
It specifies the CAPE-OPEN common services on the Parameter concept.
No information on its content is given here, please refer to the CAPE-OPEN Concepts Document.
Subclasses:
<<Interface>>ICapeNumericFlowsheetFactory The ICapeNumericFlowsheetFactory Interface.
This is the factory of a Flowsheet model.<<Interface>>ICapeNumericAnalysis The ICapeNumericAnalysis Interface.
This is the basic Interface of numerical Analysis model: the minimum requirements for an analysis.
It is an "abstract" Interface. It is not distributed. So, no client can get its object reference.<<Interface>>ICapeNumericFlowsheet The ICapeNumericFlowsheet Interface.
This is the basic Interface of Flowsheet description model. Would allow to develop a more complex Flowsheet description model.
It is an "abstract" Interface. It is not distributed. So, no client can get its object reference.<<Interface>>ICapeNumericGATComponent The ICapeNumericGATComponent Interface.
This is the entrance object to the CO SMST Component.
First of all, the client must bind to this interface or get its reference by another way. Then, the client can access to the CO SMST Component.<<Interface>>ICapeNumericAnalysisFactory The ICapeNumericAnalysisFactory Interface.
This is the factory of a numerical Analysis.


You can find the documentation for the current stable version of Video on the Racket docs website. Older versions of this manual are also available:
You can also find the documentation for your local installation of Video by running raco docs video in your terminal, or by clickingHelp -> Documentation
inside of DrRacket.
This is a list of Video related publications.


'I thought I was a freak' - Inspirational South Shields man opens up about autism diagnosis
Richard Smith has been praised for helping support young children with autism
by Rachael NicholBeaten, neglected and feeling alone, Richard Smith hit rock bottom.
For more than 20 years he hid his condition because he thought he was "weird".
But at the age of 30, Richard was finally diagnosed with autism.
Learning to live with his condition, Richard is now using his life experience to help stop other autistic children going through what he did.
And as a result of his hard work, he has won the People’s Autism Hero Award at the Autism Hero Awards 2019.
Born in South Shields, Richard grew up suffering from child abuse and neglect until he was two-and-half years old.
After being reported to the police and social services, Richard’s birth parents were jailed and he was put into care.
At the age of three Richard was adopted and was diagnosed with detachment disorder.
Richard, known to many as Richie, said: "I never really gelled with my adopted parents, I felt very alone and I isolated myself to feel even more alone.
"I was really unwell because of the way I was treated and never accepted why I was different to the world.
"After realising I had sensory differences that I never knew I had, I bottled it all up which then caused me to become more detached from adoptive family."
Struggling with his adoption, Richard never addressed these issues and kept hiding them away from others.
Creating his own secret sensory box of household objects, he used to hide in the toilet seeing it as a 'safe place' from the world.
The 32-year-old said: "I would never be able to tell anybody about it because I thought I was a freak and a weirdo.
"I felt almost like I used to put a show on to depress my autism."
Richard struggled throughout school and after being told by teachers that he was "thick", "stupid" and "naughty" he left school without qualifications.
He left home when he was 17 and despite trying to stay in touch with his adoptive family, he found himself drifting away before turning to gambling and attempting to take his own life.
He met his wife in 2005 but by the time he was 25, his mother-in-law had told him he had to address his mental health issues.
Richard sought medical help along with therapy and managed to find a place at Newcastle College studying a Level 3 course in engineering.
He and his wife then adopted two children and Richard said he had turned his life around.
However, Richard said that the staff pointed out his past to be his biggest strength as he is able to understand what the children are going through.
He said: "My family are fantastic but at this stage in the back of my mind I still felt like a weirdo and different.
"When we adopted our first child, my little one used to have a high pitched scream and it upset me as it was predictable.
"I thought to myself why don't I sort this last piece of the puzzle out and go to the doctors and say that I can see a million of things and hearing noises without knowing why."
He said: "I lost my mental health, I was looking online and attending different autism groups to get help.
"Then it dawned on me that autism is different to everyone autistic, we are all different. Which made me then realise that I can be myself."
In October, Richard quit his job as an engineering tutor and opened Awesometistic to help give autistic children a voice.
He said: "I want no little boy or girl to grow up the way that I did.
"Now I want to make sure make kids realise that people with autism are awesome and it's not something that they should be scared of.
"I was always scared to have a voice and voice myself in case of peoples opinion but now I carry my own sensory box with me."
Now, Richard goes into hundreds of school across the North East sharing his story about autism, to try to teach children, staff and parents how autism is different to every individual.
While giving talks at autistic events and setting up his own parent's support group, he has helped more than 2,500 families with autistic children.
Richard attends the events in his Ford Mustang, which was donated by car dealership Lookers, and he said he receives an impressive reaction from children helping to promote that ‘even having autism you can be awesome’.
As a result of his hard work, Richard recently won the People’s Autism Hero Award at the Autism Hero Awards in London.
He said: "My life experiences have made me stronger and who I am today.
"I started to cry and overwhelmed. I had such a lovely night.
"A year ago I would never expect to be in London receiving an award."
For more information about Awesometistic, visit his website.


{% extends "base.html" %} {% block title %}
Medieval catalogues > UNIVERSITY AND COLLEGE LIBRARIES OF OXFORD > Oriel College > List of books bequeathed by Stephen Kettelbergh, 22 June 1359
{% endif %}70 identified entries found.
All data was derived from the List of Identifications by Professor Richard Sharpe.
{% if not printing %}
A key to codes used in the List is available (opens in new tab).{% endif %}